Class: Amigo::JoinResult

Inherits:
Object show all
Includes:
Hamster::Immutable
Defined in:
lib/amigo/join_result.rb

Instance Method Summary collapse

Constructor Details

#initialize(variables, triples, rows) ⇒ JoinResult

Returns a new instance of JoinResult.



11
12
13
14
15
# File 'lib/amigo/join_result.rb', line 11

def initialize(variables, triples, rows)
  @variables = variables
  @triples = triples
  @rows = rows
end

Instance Method Details

#add(where) ⇒ Object



17
18
19
# File 'lib/amigo/join_result.rb', line 17

def add(where)
  transform { @rows = where.join(@triples, @rows) }
end

#solutionsObject



21
22
23
# File 'lib/amigo/join_result.rb', line 21

def solutions
  @rows.map { |row| Solution.new(@variables, row) }
end