Module rustc::middle::trans::callee[src]

Handles translation of callees as well as other call-related things. Callees are a superset of normal rust values and sometimes have different representations. In particular, top-level fn items and methods are represented as just a fn ptr and not a full closure.

Structs

Callee
MethodData

Enums

AutorefArg
CallArgs
CalleeData

Functions

trans_arg_datum
trans_call
trans_call_inner

This behemoth of a function translates function calls. Unfortunately, in order to generate more efficient LLVM output at -O0, it has quite a complex signature (refactoring this into two functions seems like a good idea).

trans_fn_ref

Translates a reference (with id ref_id) to the fn/method with id def_id into a function pointer. This may require monomorphization or inlining.

trans_fn_ref_with_vtables

Translates a reference to a fn/method item, monomorphizing and inlining as it goes.

trans_lang_call
trans_method_call