Sha256: 216e6a2f9b4e1b135f34c8d6d09fdaf1e13fb74483148a89d1ebeed81ac476eb

Contents?: true

Size: 462 Bytes

Versions: 10

Compression:

Stored size: 462 Bytes

Contents

module Zapata
  module Primitive
    class Var < Base
      def node
        name, body = @code.to_a
        type = @code.type
        OpenStruct.new(type: type, name: name, body: body)
      end

      def literal
        Diver.dive(node.body).literal
      end

      def to_raw
        raw = Diver.dive(node.body).to_raw

        if raw.type == :super
          Missing.new(node.name).to_raw
        else
          raw
        end
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
zapata-0.1.6 lib/zapata/primitive/var.rb
zapata-0.1.5 lib/zapata/primitive/var.rb
zapata-0.1.4 lib/zapata/primitive/var.rb
zapata-0.1.3 lib/zapata/primitive/var.rb
zapata-0.1.2 lib/zapata/primitive/var.rb
zapata-0.1.1 lib/zapata/primitive/var.rb
zapata-0.1.0 lib/zapata/primitive/var.rb
zapata-0.0.3 lib/zapata/primitive/var.rb
zapata-0.0.2 lib/zapata/primitive/var.rb
zapata-0.0.1 lib/zapata/primitive/var.rb