Class: Musa::Neumas::Decoders::ProtoDecoder
- Defined in:
- lib/musa-dsl/neumas/neuma-decoder.rb
Overview
Abstract base decoder class.
Defines the basic decoder interface. All decoders must implement:
decode(element)- Main decoding methodsubcontext- Create independent decoder context
Subcontexts
Subcontexts allow creating independent decoder instances for nested structures (like grace notes) that need their own state tracking.
Direct Known Subclasses
Instance Method Summary collapse
-
#decode(_element) ⇒ Hash
Decodes element to musical event.
-
#subcontext ⇒ ProtoDecoder
Creates subcontext decoder.
Instance Method Details
#decode(_element) ⇒ Hash
Decodes element to musical event.
Abstract method - must be implemented by subclasses.
115 116 117 |
# File 'lib/musa-dsl/neumas/neuma-decoder.rb', line 115 def decode(_element) raise NotImplementedError end |
#subcontext ⇒ ProtoDecoder
Creates subcontext decoder.
Returns independent decoder instance for nested decoding. Default implementation returns self (stateless).
100 101 102 |
# File 'lib/musa-dsl/neumas/neuma-decoder.rb', line 100 def subcontext self end |