Module: Holistic::Ruby::Reference::Store

Extended by:
Store
Included in:
Store
Defined in:
lib/holistic/ruby/reference/store.rb

Instance Method Summary collapse

Instance Method Details

#call(database:, processing_queue:, scope:, clues:, location:) ⇒ Object



7
8
9
10
11
12
13
14
15
16
# File 'lib/holistic/ruby/reference/store.rb', line 7

def call(database:, processing_queue:, scope:, clues:, location:)
  record = Record.new(location.identifier, { identifier: location.identifier, clues:, location: })

  reference = database.store(location.identifier, record)

  database.connect(source: scope, target: reference, name: :contains_many_references, inverse_of: :located_in_scope)
  database.connect(source: location.file, target: reference, name: :defines_references, inverse_of: :reference_defined_in_file)

  processing_queue.push(reference)
end