Sha256: 59ecdc2ccf4667806be96bbd85f9de83ce63f912eb983c87d6aae4c56cc2d798

Contents?: true

Size: 746 Bytes

Versions: 13

Compression:

Stored size: 746 Bytes

Contents

module Mutant
  # Mixin for node helpers
  module NodeHelpers

    # Build node
    #
    # @param [Symbol] type
    #
    # @return [Parser::AST::Node]
    #
    # @api private
    #
    def s(type, *children)
      Parser::AST::Node.new(type, children)
    end
    module_function :s


    NAN               = s(:send, s(:float,  0.0), :/, s(:args, s(:float, 0.0)))
    NEGATIVE_INFINITY = s(:send, s(:float, -1.0), :/, s(:args, s(:float, 0.0)))
    INFINITY          = s(:send, s(:float,  1.0), :/, s(:args, s(:float, 0.0)))
    NEW_OBJECT        = s(:send, s(:const, s(:cbase), :Object), :new)

    RAISE             = s(:send, nil, :raise)

    N_NIL             = s(:nil)
    N_EMPTY           = s(:empty)

  end # NodeHelpers
end # Mutant

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
mutant-0.3.0.beta20 lib/mutant/node_helpers.rb
mutant-0.3.0.beta19 lib/mutant/node_helpers.rb
mutant-0.3.0.beta18 lib/mutant/node_helpers.rb
mutant-0.3.0.beta17 lib/mutant/node_helpers.rb
mutant-0.3.0.beta16 lib/mutant/node_helpers.rb
mutant-0.3.0.beta15 lib/mutant/node_helpers.rb
mutant-0.3.0.beta14 lib/mutant/node_helpers.rb
mutant-0.3.0.beta13 lib/mutant/node_helpers.rb
mutant-0.3.0.beta12 lib/mutant/node_helpers.rb
mutant-0.3.0.beta11 lib/mutant/node_helpers.rb
mutant-0.3.0.beta10 lib/mutant/node_helpers.rb
mutant-0.3.0.beta9 lib/mutant/node_helpers.rb
mutant-0.3.0.beta8 lib/mutant/node_helpers.rb