module JEDICT

Public Class Methods

[](filename, eager_load = false) click to toggle source
# File lib/jedict.rb, line 27
def self.[] filename, eager_load = false
  instanciate_from filename, eager_load
end
format_node(n, pre = "") click to toggle source
# File lib/jedict.rb, line 63
def self.format_node n, pre = ""
  if n.is_a? Array
    n.reduce("") do |s, e| 
      s + pre + format_node(e, pre + "  ") 
    end
  elsif n.is_a? Hash
    n.to_a.reduce("") do |s, e|
      key, value = *e
      s + "\n" + pre + ((key == :value) ? "" : key.to_s  + ": ") + format_node(value, pre + "  ")
    end
  else 
    n.to_s
  end
end
instanciate_from(filename, eager_load) click to toggle source
# File lib/jedict.rb, line 22
def self.instanciate_from filename, eager_load
  raise "Invalid path #{filename}" unless FileTest.exist? filename
  DictionaryProxy.new(filename, eager_load)
end
load_file(filename, parser = Parser::Full.new) click to toggle source
# File lib/jedict.rb, line 58
def self.load_file filename, parser = Parser::Full.new
  Nokogiri::XML::SAX::Parser.new(parser).parse(File.open(filename))
  parser.value
end
new(file: File.join(__dir__, '../assets/jedict'), eager: false) click to toggle source
# File lib/jedict.rb, line 31
def self.new file: File.join(__dir__, '../assets/jedict'), eager: false
  instanciate_from file, eager
end