Module: TSparser::AribStringDecoder::ClassExtension
- Defined in:
- lib/arib_string_decoder.rb
Overview
Module for class extension when AribStringDecoder is included.
Instance Method Summary collapse
- #def_code(code_length, *code_names, &block) ⇒ Object
- #def_code_call(&block) ⇒ Object
- #def_code_operation(&block) ⇒ Object
- #def_code_set(set_name, &block) ⇒ Object
- #def_control_code(control_code_name, &block) ⇒ Object
- #def_default_group_map(&block) ⇒ Object
- #def_default_region_map(&block) ⇒ Object
- #def_mapping(map_name, &block) ⇒ Object
- #new_decoder ⇒ Object
Instance Method Details
#def_code(code_length, *code_names, &block) ⇒ Object
55 56 57 58 59 60 61 62 |
# File 'lib/arib_string_decoder.rb', line 55 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) ⇒ Object
39 40 41 42 |
# File 'lib/arib_string_decoder.rb', line 39 def def_code_call(&block) @code_caller = AribStringDecoder::Definition::CodeCaller.new @code_caller.instance_eval(&block) end |
#def_code_operation(&block) ⇒ Object
44 45 46 47 |
# File 'lib/arib_string_decoder.rb', line 44 def def_code_operation(&block) @code_operator = AribStringDecoder::Definition::CodeOperator.new @code_operator.instance_eval(&block) end |
#def_code_set(set_name, &block) ⇒ Object
49 50 51 52 53 |
# File 'lib/arib_string_decoder.rb', line 49 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) ⇒ Object
33 34 35 36 37 |
# File 'lib/arib_string_decoder.rb', line 33 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) ⇒ Object
25 26 27 |
# File 'lib/arib_string_decoder.rb', line 25 def def_default_group_map(&block) @group_map = block.call end |
#def_default_region_map(&block) ⇒ Object
29 30 31 |
# File 'lib/arib_string_decoder.rb', line 29 def def_default_region_map(&block) @region_map = block.call end |
#def_mapping(map_name, &block) ⇒ Object
64 65 66 |
# File 'lib/arib_string_decoder.rb', line 64 def def_mapping(map_name, &block) AribStringDecoder.const_set(map_name, block.call) end |
#new_decoder ⇒ Object
19 20 21 22 23 |
# File 'lib/arib_string_decoder.rb', line 19 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 |