pub trait ScopeContainer<LABEL> {
type PathContainer;
// Required method
fn lift_step(self, lbl: LABEL, prefix: Path<LABEL>) -> Self::PathContainer;
}
Expand description
Interface for scope containers that support the operations required for query resolution.
Required Associated Types§
Sourcetype PathContainer
type PathContainer
The type containing paths obtained after stepping to this scope.
Required Methods§
Sourcefn lift_step(self, lbl: LABEL, prefix: Path<LABEL>) -> Self::PathContainer
fn lift_step(self, lbl: LABEL, prefix: Path<LABEL>) -> Self::PathContainer
Lift the Path::step
operation into this container.
Should retain the contract that for all scopes s
in self
, prefix.step(lbl, s)
is
included in the resulting path container (except cyclic paths).