module TSparser::AribStringDecoder::ClassExtension


Module for class extension when AribStringDecoder is included.


Public Instance Methods

def_code(code_length, *code_names, &block) click to toggle source
# File lib/arib_string_decoder.rb, line 54
def def_code(code_length, *code_names, &block)
  @code_proc_map ||= Hash.new
  @code_length_map ||= Hash.new
  code_names.each do |code_name|
    @code_proc_map[code_name] = block
    @code_length_map[code_name] = code_length
  end
end
def_code_call(&block) click to toggle source
# File lib/arib_string_decoder.rb, line 38
def def_code_call(&block)
  @code_caller = AribStringDecoder::Definition::CodeCaller.new
  @code_caller.instance_eval(&block)
end
def_code_operation(&block) click to toggle source
# File lib/arib_string_decoder.rb, line 43
def def_code_operation(&block)
  @code_operator = AribStringDecoder::Definition::CodeOperator.new
  @code_operator.instance_eval(&block)
end
def_code_set(set_name, &block) click to toggle source
# File lib/arib_string_decoder.rb, line 48
def def_code_set(set_name, &block)
  @code_set_map ||= Hash.new
  @code_set_map[set_name] = AribStringDecoder::Definition::CodeSet.new
  @code_set_map[set_name].instance_eval(&block)
end
def_control_code(control_code_name, &block) click to toggle source
# File lib/arib_string_decoder.rb, line 32
def def_control_code(control_code_name, &block)
  @control_code_map ||= Hash.new
  @control_code_map[control_code_name] = AribStringDecoder::Definition::ControlCode.new
  @control_code_map[control_code_name].instance_eval(&block)
end
def_default_group_map(&block) click to toggle source
# File lib/arib_string_decoder.rb, line 24
def def_default_group_map(&block)
  @group_map = block.call
end
def_default_region_map(&block) click to toggle source
# File lib/arib_string_decoder.rb, line 28
def def_default_region_map(&block)
  @region_map = block.call
end
def_mapping(map_name, &block) click to toggle source
# File lib/arib_string_decoder.rb, line 63
def def_mapping(map_name, &block)
  AribStringDecoder.const_set(map_name, block.call)
end
new_decoder() click to toggle source
# File lib/arib_string_decoder.rb, line 18
def new_decoder
  args = [@code_caller, @code_operator, @code_set_map, @code_proc_map, @code_length_map,
          @group_map, @region_map, @control_code_map]
  return AribStringDecoder::Decoder.new(*args)
end