Expand description
Code which is used by built-in goals that match “structurally”, such a auto
traits, Copy
/Clone
.
Structs§
- Relevant types for an async callable, including its inputs, output, and the return type you get from awaiting the output.
Functions§
- Given a coroutine-closure, project to its returned coroutine when we are not certain that the closure’s kind is compatible with the goal, and therefore also don’t know yet what the closure’s upvars are.
- Given a coroutine-closure, project to its returned coroutine when we are certain that the closure’s kind is compatible with the goal.
- This duplicates
extract_tupled_inputs_and_output_from_callable
but needs to return different information (namely, the def id and args) so that we can create const conditions. - Assemble a list of predicates that would be present on a theoretical user impl for an object type. These predicates must be checked any time we assemble a built-in object candidate for an object type, since they are not implied by the well-formedness of the type.