class Steep::TypeInference::TypeEnv
def get(const: nil, gvar: nil, ivar: nil)
| (gvar: Symbol) { () -> void } -> AST::Type
@type method assert: (const: Names::Module) { () -> void } -> AST::Type
def get(const: nil, gvar: nil, ivar: nil) case when const if const_types.key?(const) const_types[const] else const_env.lookup(const).yield_self do |type| if type type else yield AST::Types::Any.new end end end else lookup_dictionary(ivar: ivar, gvar: gvar) do |var_name, dictionary| if dictionary.key?(var_name) dictionary[var_name] else yield AST::Types::Any.new end end end end