class

Heucristic::Resolve::Methods

Inherits Reference < Object

Constants

LEAF_LIMIT = 64

Constructors

new(workspace : Index::Workspace, types : Types)
Source

Instance methods

abstract_class?(type : Index::Identity) : Bool
Source
admits?(restriction : Resolution, argument : Resolved, admission : Admission = :overload) : Bool
Source
candidates(receiver : Resolved) : Array(Index::Def)
Source
class_macros(receiver : Resolution, call : CallShape) : Array(Index::MacroDef)
Source
compatible?(entry : Index::Def, call : CallShape, receiver : Resolution | Nil = nil) : Bool
Source
compiled(map : Compiled) : Nil
Source
concrete_descendants(type : Index::Identity) : Array(Index::Identity)
Source
concrete_subclasses(receiver : Resolution, caller_path : String | Nil) : Array(Resolved)
Source
construction_leaves(receiver : Resolution, call : CallShape) : Array(CallShape) | Nil
Source
covering(receiver : Resolution, call : CallShape) : Covering | Nil
Source
defined_between?(below : Index::Identity, base : Index::Identity, name : String) : Bool
Source
descendants
Source
dispatch(receiver : Resolution, call : CallShape) : Array(Index::Def)
Source
extends_itself?(type : Index::Identity) : Bool
Source
invalidate
Source
levels(type : Index::Identity) : Array(Index::Identity)
Source
lookup(receiver : Resolution, call : CallShape) : Array(Index::Def)
Source
lookup_super(receiver : Resolved, owner : Index::Identity, call : CallShape) : Array(Index::Def)
Source
missing(name : String, receiver : Resolution) : Unknown
Source
named_on(receiver : Resolved, name : String, caller_path : String | Nil = nil) : Array(Index::Def)
Source
own?(entry : Index::Def, caller_path : String | Nil) : Bool
Source
reached(receiver : Resolution, call : CallShape, found : Array(Index::Def)) : Array(Index::Def)
Source
rejected_argument(entry : Index::Def, call : CallShape, admission : Admission = :overload, receiver : Resolution | Nil = nil) : Rejected | Nil
Source
virtual_lookup(receiver : Resolution, call : CallShape) : Array(Index::Def)
Source
virtual_receivers(receiver : Resolution, caller_path : String | Nil) : Array(Resolved)
Source

Nested types