Sha256: 3c54698864ca6669baf1c90eb5dd1bedd8896da1198e147d8d26f6285d3f48f5

Contents?: true

Size: 488 Bytes

Versions: 2

Compression:

Stored size: 488 Bytes

Contents

module Yoda
  module Typing
    module Tree
      class VariableAssignment < Base
        # @!method node
        #   @return [AST::AssignmentNode]

        # @return [Store::Types::Base]
        def infer_type
          context.type_binding.bind(node.assignee.name, body_type)
          body_type
        end

        # @return [Types::Type]
        def body_type
          @body_type ||= begin
            infer_child(node.content)
          end
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
yoda-language-server-0.10.1 lib/yoda/typing/tree/variable_assignment.rb
yoda-language-server-0.10.0 lib/yoda/typing/tree/variable_assignment.rb