Sha256: 6f8809cf526fe5d96922d129c189ed6902cb0f35b2ea9dd451bb0c5675903982

Contents?: true

Size: 517 Bytes

Versions: 1

Compression:

Stored size: 517 Bytes

Contents

module RipperRubyParser
  module SexpHandlers
    # Sexp handlers for array literals
    module Arrays
      def process_array(exp)
        _, elems = exp.shift 2
        return s(:array) if elems.nil?
        s(:array, *handle_array_elements(elems))
      end

      def process_aref(exp)
        _, coll, idx = exp.shift 3

        coll = process(coll)
        coll = nil if coll == s(:self)

        idx = process(idx) || s(:arglist)
        idx.shift
        s(:call, coll, :[], *idx)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ripper_ruby_parser-1.2.0 lib/ripper_ruby_parser/sexp_handlers/arrays.rb