pub struct ReverseContributions {
pub provided_triggers: HashSet<String>,
pub assigned_statuses: HashMap<String, HashSet<String>>,
pub witnessed_transitions: HashMap<String, HashSet<(String, String)>>,
pub referenced_fields: HashSet<String>,
}Expand description
Contributions an importing module makes, by qualified reference, to an
imported module’s entities and triggers. Analysis runs per file, so an
imported module never sees the importers that drive its entities. These
contributions are aggregated across every importer in the check set and fed
back into the imported module’s analysis, so a modular spec is analysed as
the equivalent merged single file would be. Empty in single-file mode and
whenever no use edge links the modules — crediting requires a real import
edge, never arbitrary co-supply.
Fields§
§provided_triggers: HashSet<String>Trigger names an importer provides via provides: alias/Trigger(...).
Makes the imported module’s rules that listen for them reachable (#63).
assigned_statuses: HashMap<String, HashSet<String>>Imported entity name → status values an importer assigns, whether via
alias/Entity.created(status: X) (#62) or as the target of a witnessed
transition (#64).
witnessed_transitions: HashMap<String, HashSet<(String, String)>>Imported entity name → transition edges (from, to) an importer
witnesses by guarding on from and assigning to on a binding typed to
that entity by the imported module’s surface provides: (#64).
referenced_fields: HashSet<String>Field names of imported entities that an importer references via a
qualified access (alias/Entity.field). Such a field is used even though
its only reference lives in another module, so the imported module must
not report it as unused.
Implementations§
Trait Implementations§
Source§impl Clone for ReverseContributions
impl Clone for ReverseContributions
Source§fn clone(&self) -> ReverseContributions
fn clone(&self) -> ReverseContributions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more