Class: Bisu::KnowledgeBase

Inherits:
Object
  • Object
show all
Defined in:
lib/bisu/knowledge_base.rb

Direct Known Subclasses

GoogleDriveKB

Instance Method Summary collapse

Constructor Details

#initialize(kb) ⇒ KnowledgeBase

Returns a new instance of KnowledgeBase.



7
8
9
10
11
12
# File 'lib/bisu/knowledge_base.rb', line 7

def initialize(kb)
  raise "Bad KB format (expected Hash)"             unless kb.is_a?(Hash)
  raise "Bad KB format (expected :languages Array)" unless kb.key?(:languages) && kb[:languages].is_a?(Array)
  raise "Bad KB format (expected :keys Hash)"       unless kb.key?(:keys)      && kb[:keys].is_a?(Hash)
  @kb = kb
end

Instance Method Details

#has_language?(language) ⇒ Boolean

Returns:

  • (Boolean)


14
15
16
# File 'lib/bisu/knowledge_base.rb', line 14

def has_language?(language)
  @kb[:languages].include?(language)
end

#localize(key, language) ⇒ Object



18
19
20
21
22
23
24
# File 'lib/bisu/knowledge_base.rb', line 18

def localize(key, language)
  if locals = @kb[:keys][key]
    locals[language]
  else
    nil
  end
end