nitc :: CallSite :: defaultinit
# A specific method call site with its associated informations.
class CallSite
super MEntity
redef var location
# The static type of the receiver (possibly unresolved)
var recv: MType
# The module where the callsite is present
var mmodule: MModule
# The anchor to use with `recv` or `msignature`
var anchor: nullable MClassType
# Is the receiver self?
# If "for_self", virtual types of the signature are kept
# If "not_for_self", virtual type are erased
var recv_is_self: Bool
# The designated method
var mproperty: MMethod
# The statically designated method definition
# The most specif one, it is.
var mpropdef: MMethodDef
# The resolved signature for the receiver
var msignature: MSignature
# Is a implicit cast required on erasure typing policy?
var erasure_cast: Bool
# The mapping used on the call to associate arguments to parameters
# If null then no specific association is required.
var signaturemap: nullable SignatureMap = null
private fun check_signature(v: TypeVisitor, node: ANode, args: Array[AExpr]): Bool
do
var map = v.check_signature(node, args, self.mproperty, self.msignature)
signaturemap = map
if map == null then is_broken = true
return map == null
end
# Information about the callsite to display on a node
fun dump_info(v: ASTDump): String do
return "{recv}.{mpropdef}{msignature}"
end
redef fun mdoc_or_fallback do return mproperty.intro.mdoc
end
src/semantize/typing.nit:774,1--825,3