Sha256: f1284e01f3aaadc96404233be911691e630c54875f6c8c50b3b76698d2f730e5

Contents?: true

Size: 872 Bytes

Versions: 589

Compression:

Stored size: 872 Bytes

Contents

require 'rbbt/association'
require 'rbbt/association/item'
require 'rbbt/knowledge_base/entity'
require 'rbbt/knowledge_base/query'
require 'rbbt/knowledge_base/syndicate'

class KnowledgeBase

  attr_accessor :namespace, :dir, :databases, :indices, :registry, :format, :entity_options
  def initialize(dir, namespace = nil)
    @dir = Path.setup(dir.dup)

    @namespace = namespace
    @format = IndiferentHash.setup({})

    @registry ||= IndiferentHash.setup({})
    @entity_options = IndiferentHash.setup({})

    @indices = IndiferentHash.setup({})
    @databases = IndiferentHash.setup({})
    @identifiers = IndiferentHash.setup({})
    @fields = {}
    @descriptions = {}
    @databases = {}
  end

  def self.load(dir)
    KnowledgeBase.new dir
  end

  def setup(name, matches, reverse = false)
    AssociationItem.setup matches, self, name, reverse
  end
end

Version data entries

589 entries across 589 versions & 1 rubygems

Version Path
rbbt-util-5.44.1 lib/rbbt/knowledge_base.rb
rbbt-util-5.43.0 lib/rbbt/knowledge_base.rb
rbbt-util-5.42.0 lib/rbbt/knowledge_base.rb
rbbt-util-5.41.1 lib/rbbt/knowledge_base.rb
rbbt-util-5.41.0 lib/rbbt/knowledge_base.rb
rbbt-util-5.40.5 lib/rbbt/knowledge_base.rb
rbbt-util-5.40.4 lib/rbbt/knowledge_base.rb
rbbt-util-5.40.3 lib/rbbt/knowledge_base.rb
rbbt-util-5.40.0 lib/rbbt/knowledge_base.rb
rbbt-util-5.39.0 lib/rbbt/knowledge_base.rb
rbbt-util-5.38.1 lib/rbbt/knowledge_base.rb
rbbt-util-5.38.0 lib/rbbt/knowledge_base.rb
rbbt-util-5.37.16 lib/rbbt/knowledge_base.rb
rbbt-util-5.37.15 lib/rbbt/knowledge_base.rb
rbbt-util-5.37.14 lib/rbbt/knowledge_base.rb
rbbt-util-5.37.13 lib/rbbt/knowledge_base.rb
rbbt-util-5.37.12 lib/rbbt/knowledge_base.rb
rbbt-util-5.37.11 lib/rbbt/knowledge_base.rb
rbbt-util-5.37.10 lib/rbbt/knowledge_base.rb
rbbt-util-5.37.9 lib/rbbt/knowledge_base.rb