Class: Zpl::Transformer::Base
- Inherits:
-
Object
- Object
- Zpl::Transformer::Base
- Defined in:
- lib/zpl-transformer/transformer/base.rb
Overview
TODO: doc - explain how to make a transformer
Direct Known Subclasses
Instance Method Summary collapse
-
#apply(zpl_code, strip_spaces: true) ⇒ Object
TODO: doc.
-
#map_cmd(cmd) ⇒ Object
TODO: doc.
Instance Method Details
#apply(zpl_code, strip_spaces: true) ⇒ Object
TODO: doc
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/zpl-transformer/transformer/base.rb', line 11 def apply(zpl_code, strip_spaces: true) reader = Reader.new(zpl_code, strip_spaces: strip_spaces) transformed_zpl = StringIO.new while token = reader.next_token if token.is_a?(Command) # It's a command, transform it if new_cmd = self.map_cmd(token) transformed_zpl << new_cmd.to_zpl_string end else # Not a command, just append it transformed_zpl << token end end transformed_zpl.string end |
#map_cmd(cmd) ⇒ Object
TODO: doc
31 32 33 |
# File 'lib/zpl-transformer/transformer/base.rb', line 31 def map_cmd(cmd) cmd end |