Sha256: ca3e3f99eb57cea3337aac87e1e1e40a6788a2e664fac9c26efeea45d5a1cafb

Contents?: true

Size: 484 Bytes

Versions: 2

Compression:

Stored size: 484 Bytes

Contents

module Yoda
  module Typing
    module Tree
      class Variable < Base
        def type
          context.environment.resolve(node.children.first) || generator.any_type
        end

        # @param var [Symbol]
        # @param body_node [::AST::Node]
        # @return [Store::Types::Base]
        def process_bind(var, body_node)
          body_type = infer(body_node)
          context.environment.bind(var, body_type)
          body_type
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
yoda-language-server-0.9.0 lib/yoda/typing/tree/variable.rb
yoda-language-server-0.8.0 lib/yoda/typing/tree/variable.rb