class AbstractMapper::Rules::Sole
The abstract class that describes the rule to be applied to sole nodes.
The subclass should implement two instance methods:
-
`#optimize?` to check if the optimization should be applied to the node
-
`#optimize` that should return the optimized node
@example
class RemoveEmptyList < AbstractMapper::Rules::Sole def optimize? node.is_a?(List) && node.empty? end def optimize end end
@abstract
@api public
Attributes
node[R]
@!attribute [r] node
@return [AbstractMapper::AST::Node] The node to be optimized
Public Class Methods
new(node)
click to toggle source
@private
Calls superclass method
AbstractMapper::Rules::Base::new
# File lib/abstract_mapper/rules/sole.rb, line 51 def initialize(node) @node = node super end
Private Class Methods
composer()
click to toggle source
@private
# File lib/abstract_mapper/rules/sole.rb, line 31 def self.composer :filter end