Class: ASIR::Coder::Chain
- Inherits:
-
ASIR::Coder
- Object
- ASIR::Coder
- ASIR::Coder::Chain
- Defined in:
- lib/asir/coder/chain.rb
Overview
!SLIDE Chain Coder Chain multiple Coders as one.
@@@ text message –> | e1 | –> | e2 | –> | eN | –> result <– | d1 | <– | d2 | <– | dN | <– @@@
Instance Attribute Summary collapse
-
#encoders ⇒ Object
Returns the value of attribute encoders.
Attributes included from Log
Instance Method Summary collapse
Methods inherited from ASIR::Coder
#_subclass_responsibility, #decode, #encode, #prepare
Methods included from Log
#_log, #_log_enabled=, #_log_enabled?, #_log_format, #_log_result, enabled, enabled=, included
Methods included from Initialization
Instance Attribute Details
#encoders ⇒ Object
Returns the value of attribute encoders.
12 13 14 |
# File 'lib/asir/coder/chain.rb', line 12 def encoders @encoders end |
Instance Method Details
#_decode(obj) ⇒ Object
21 22 23 24 25 26 |
# File 'lib/asir/coder/chain.rb', line 21 def _decode obj encoders.reverse_each do | e | obj = e.dup.decode(obj) end obj end |
#_encode(obj) ⇒ Object
14 15 16 17 18 19 |
# File 'lib/asir/coder/chain.rb', line 14 def _encode obj encoders.each do | e | obj = e.dup.encode(obj) end obj end |