Sha256: 46b1ee26dde903edfcc607f651dca998fb52cc98bc7e6a9c906711fbf93916f0

Contents?: true

Size: 574 Bytes

Versions: 4

Compression:

Stored size: 574 Bytes

Contents

module Yoda
  module AST
    class ParameterNode < Node
      # @return [NameVnode, EmptyNode, nil]
      def content
        children[0]
      end

      # @return [Model::Parameters::Base]
      def parameter
        content&.present? ? Model::Parameters::Named.new(content.name) : Model::Parameters::Unnamed.new
      end

      # @return [Model::Parameters::Base]
      def parameter_root
        parameter_root_node.parameter
      end

      # @return [ParametersNode]
      def parameter_root_node
        parent.try(:parameter_root_node)
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
yoda-language-server-0.10.1 lib/yoda/ast/parameter_node.rb
yoda-language-server-0.10.0 lib/yoda/ast/parameter_node.rb
yoda-language-server-0.9.0 lib/yoda/ast/parameter_node.rb
yoda-language-server-0.8.0 lib/yoda/ast/parameter_node.rb