Class: AlgebraDB::Def::Relationship

Inherits:
Object
  • Object
show all
Defined in:
lib/algebra_db/def/relationship.rb

Overview

Defines a relationship between two tables.

Instance Method Summary collapse

Constructor Details

#initialize(joined_table, relater_proc) ⇒ Relationship

Returns a new instance of Relationship.



6
7
8
9
# File 'lib/algebra_db/def/relationship.rb', line 6

def initialize(joined_table, relater_proc)
  @joined_table = joined_table
  @relater_proc = relater_proc
end

Instance Method Details

#join_clause(joined_relation) ⇒ Object



11
12
13
# File 'lib/algebra_db/def/relationship.rb', line 11

def join_clause(joined_relation)
  @relater_proc.call(joined_relation)
end

#joined_tableObject



15
16
17
# File 'lib/algebra_db/def/relationship.rb', line 15

def joined_table
  @joined_table.is_a?(Proc) ? @joined_table.call : @joined_table
end