## Structs

## Functions

- If
`include_nonconstraining`

is false, returns the list of parameters that are constrained by`t`

- i.e., the value of each parameter in the list is uniquely determined by`t`

(see RFC 447). If it is true, return the list of parameters whose values are needed in order to constrain`ty`

- these differ, with the latter being a superset, in the presence of projections. - Returns the set of parameters constrained by the impl header.
- Order the predicates in
`predicates`

such that each parameter is constrained before it is used, if that is possible, and add the parameters so constrained to`input_parameters`

. For example, imagine the following impl: