Skip to main content

mentioned_by_copies

Function mentioned_by_copies 

Source
pub fn mentioned_by_copies(module: &Module) -> Vec<Name>
Expand description

The values of module that a copy of its code, placed in another module, names: the declarations its constrained declarations and the bindings of its instances mention.

A copy is made from what was written in module, and it can name a value module does not expose — exposing is a rule about what another module’s source may write, and canonicalization enforces it whatever this returns. So a backend that makes each copy reachable exports these as well as what the header lists. A constrained declaration has no function under its own name, so it is never in the answer; the instance bindings of a module are every one of its instances’, whether or not the instance has a context, since a binding that is not copied is not harmed by being named. A derivation’s bindings are placed in the instances that derive them, so they are among those.

Sorted by name.