Class: Okura::WordDic::DoubleArray::Builder

Inherits:
Object
  • Object
show all
Defined in:
lib/okura/word_dic.rb

Defined Under Namespace

Classes: DAData, Node

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeBuilder

Returns a new instance of Builder.



189
190
191
192
# File 'lib/okura/word_dic.rb', line 189

def initialize
  @root=Node.new
  @words=Okura::Words::Builder.new
end

Class Method Details

.build_from_serialized(data) ⇒ Object

Words, [Integer], [Integer

] -> WordDic::DoubleArray



208
209
210
211
212
# File 'lib/okura/word_dic.rb', line 208

def self.build_from_serialized data
  words,base,check=data
  puts base.length
  DoubleArray.new words,base,check
end

Instance Method Details

#buildObject



198
199
200
201
# File 'lib/okura/word_dic.rb', line 198

def build
  da=DAData.new @root
  DoubleArray.new *data_for_serialize
end

#data_for_serializeObject

-> [ Words, [Integer], [Integer] ]



203
204
205
206
# File 'lib/okura/word_dic.rb', line 203

def data_for_serialize
  da=DAData.new @root
  [@words.build,da.base,da.check]
end

#define(word) ⇒ Object



193
194
195
196
197
# File 'lib/okura/word_dic.rb', line 193

def define word
  word_group_id=@words.add word
  key=word.surface.bytes.to_a
  @root.add key,0,word_group_id
end