Modules§

Functions§

  • Like add_builtin_program_clauses, but for DomainGoal::Normalize involving a projection (e.g. <fn(u8) as FnOnce<(u8,)>>::Output)
  • For well known traits we have special hard-coded impls, either as an optimization or to enforce special rules for correctness.
  • Returns type of the last field of the input struct, which is useful for Sized and related traits. Returns None if the input is not a struct or it has no fields.
  • Given a trait ref T0: Trait and a list of types U0..Un, pushes a clause of the form Implemented(T0: Trait) :- Implemented(U0: Trait) .. Implemented(Un: Trait)