Sha256: fab3cbedcbcc0ad34a2cc5fcf574488f64d602ab2c969ccbd3a8218b681c8e9c
Contents?: true
Size: 1.02 KB
Versions: 2
Compression:
Stored size: 1.02 KB
Contents
module Unparser class Emitter # Base class for and and or op-assign class BinaryAssign < self children :target, :expression MAP = IceNine.deep_freeze( :and_asgn => '&&=', :or_asgn => '||=' ) handle *MAP.keys private # Perform dispatch # # @return [undefined] # # @api private # def dispatch visit(target) write(WS, MAP.fetch(node.type), WS) visit(expression) end end # BinaryAssign # Emitter for op assign class OpAssign < self handle :op_asgn private # Perform dispatch # # @return [undefined] # # @api private # def dispatch visit(first_child) emit_operator visit(children[2]) end # Emit operator # # @return [undefined] # # @api private # def emit_operator write(WS, children[1].to_s, O_ASN, WS) end end # OpAssign end # Emitte end # Unparser
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
unparser-0.0.2 | lib/unparser/emitter/op_assign.rb |
unparser-0.0.1 | lib/unparser/emitter/op_assign.rb |