Heucristic::Resolve::Receiver
Inherits Heucristic::Resolve::Dispatch::Typer < Heucristic::Resolve::Typer < Heucristic::Resolve::BlockInputs::Typer < Heucristic::Resolve::Typer < Reference < Object
Constants
BE_NIL_EXPECTATION = Index::Public.new("Spec::BeNilExpectation")
COMPARISONS = {"<", "<=", ">", ">="}
DEPTH_LIMIT = 48
Constructors
new(workspace : Index::Workspace, shims : Index::Shims, types : Types, methods : Methods)
SourceClass methods
Instance methods
call_on(receiver : Resolved, shape : Methods::CallShape) : Resolution
Sourcedispatch
Sourceforwarded_receiver(receiver : Resolved) : Resolution | Nil
Sourceinvalidate
Sourcemacro_precedence(call : Crystal::Call, context : Syntax::Context) : MacroPrecedence::Verdict
Sourceof_call(call : Crystal::Call, context : Syntax::Context) : Resolution
Sourceof_call(call : Crystal::Call, frame : Frame) : Resolution
Sourceremembered_exit(call : Crystal::Call, context : Syntax::Context, visiting : Array(Visit), & : Resolution -> Bool) : Bool
Sourceresult_of(call : Crystal::Call, frame : Frame) : Resolution
Sourcereturn_type(entry : Index::Def, receiver : Resolved, arguments : Array(Resolution) = Array(Resolution).new, site : Site = Site::NONE) : Resolution
Sourceselect_action(call : Crystal::Call, context : Syntax::Context) : Crystal::Call | Nil
Sourceshape_of(call : Crystal::Call, context : Syntax::Context) : Methods::CallShape
Sourceshape_of(call : Crystal::Call, frame : Frame) : Methods::CallShape
Sourcesignature(entry : Index::Def, receiver : Resolved, arguments : Array(Resolution), site : Site) : String
Sourcetype_of(node : Crystal::ASTNode, context : Syntax::Context, visiting : Array(Visit), locals : Array(Binding)) : Resolution
Sourcetype_of(node : Crystal::ASTNode, frame : Frame) : Resolution
Sourcetype_of(entry : Index::Constant) : Resolution
Sourcetyped(node : Crystal::ASTNode, context : Syntax::Context) : Resolution
Sourceyield_scope(context : Syntax::Context) : Resolution | Unscoped
Source