Sha256: 23f798125b2687e0e24c42cce5b28d4fdca9e315b89c617c03329fe3b3435e17

Contents?: true

Size: 660 Bytes

Versions: 6

Compression:

Stored size: 660 Bytes

Contents

class Code
  class Object
    class Argument < ::Code::Object
      attr_reader :value, :name, :splat, :keyword_splat, :block

      def initialize(
        value,
        name: nil,
        splat: false,
        keyword_splat: false,
        block: false
      )
        @value = value
        @name = name
        @splat = !!splat
        @keyword_splat = !!keyword_splat
        @block = !!block
      end

      def regular?
        !name
      end

      def keyword?
        !regular?
      end

      def name_value
        [name, value]
      end

      def to_s
        "argument"
      end

      def inspect
        to_s
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
code-ruby-0.2.4 lib/code/object/argument.rb
template-ruby-0.2.4 lib/code/object/argument.rb
template-ruby-0.2.3 lib/code/object/argument.rb
template-ruby-0.2.2 lib/code/object/argument.rb
template-ruby-0.2.1 lib/code/object/argument.rb
template-ruby-0.2.0 lib/code/object/argument.rb