Parent

Class/Module Index [+]

Quicksearch

RR::TypeCastingCursor

Provides functionality to cast a query result value into the correct ruby type. Requires originating table and column to be known.

Attributes

columns[RW]

A column_name => Column cache

org_cursor[RW]

The original cursor object

Public Class Methods

new(connection, table, cursor) click to toggle source

Creates a new TypeCastingCursor based on provided database connection and table name for the provided database query cursor

# File lib/rubyrep/type_casting_cursor.rb, line 18
def initialize(connection, table, cursor)
  self.org_cursor = cursor
  self.columns = {}
  connection.columns(table).each {|c| columns[c.name] = c}
end

Public Instance Methods

clear() click to toggle source
# File lib/rubyrep/type_casting_cursor.rb, line 8
def clear; org_cursor.clear end
next?() click to toggle source

Delegate the uninteresting methods to the original cursor

# File lib/rubyrep/type_casting_cursor.rb, line 7
def next?; org_cursor.next? end
next_row() click to toggle source

Reads the next row from the original cursor and returns the row with the type casted row values.

# File lib/rubyrep/type_casting_cursor.rb, line 25
def next_row
  row = org_cursor.next_row
  row.each {|column, value| row[column] = columns[column].type_cast value}
  row
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.