Sha256: 848c4fb07f282c197f406e3b9cb4e8729f14dd0c9e0f1d326fa504bf389af500

Contents?: true

Size: 563 Bytes

Versions: 7

Compression:

Stored size: 563 Bytes

Contents

# frozen_string_literal: true

module Mutant
  module AST
    # Node meta information mixin
    module Meta

      # Metadata for optional argument nodes
      class Optarg
        include NamedChildren, Concord.new(:node)

        UNDERSCORE = '_'.freeze

        children :name, :default_value

        public :name, :default_value

        # Test if optarg definition intends to be used
        #
        # @return [Boolean]
        def used?
          !name.to_s.start_with?(UNDERSCORE)
        end
      end # Optarg

    end # Meta
  end # AST
end # Mutant

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
mutant-0.8.23 lib/mutant/ast/meta/optarg.rb
mutant-0.8.22 lib/mutant/ast/meta/optarg.rb
mutant-0.8.21 lib/mutant/ast/meta/optarg.rb
mutant-0.8.20 lib/mutant/ast/meta/optarg.rb
mutant-0.8.19 lib/mutant/ast/meta/optarg.rb
mutant-0.8.18 lib/mutant/ast/meta/optarg.rb
mutant-0.8.17 lib/mutant/ast/meta/optarg.rb