pub struct LoadReport {
pub scoped_denials: Vec<ScopedDenial>,
pub warnings: Vec<PolicyWarning>,
pub last_good_fallbacks: Vec<LastGoodFallback>,
pub malformed: Vec<String>,
pub registered: HashMap<String, PolicyId>,
}Expand description
Everything worth telling an operator about a tree build: which
operator-or-startup-sourced records could not be compiled (scoped-deny,
per crate::compile), which compiled with a warning, which fell back to
a last-good revision, and which records were not policies at all,
reported by whichever source loaded them.
Fields§
§scoped_denials: Vec<ScopedDenial>Records whose predicate this build could not compile, with no
last-good revision to fall back to – still registered, scoped, via
didbot_policy::Predicate::Unusable. See crate::compile.
warnings: Vec<PolicyWarning>Records that compiled, but with something the operator should see.
Never blocks the policy – see
didbot_policy::CompileOutcome::CompiledWithWarnings.
last_good_fallbacks: Vec<LastGoodFallback>Operator-sourced records whose current revision would not compile,
still enforced at their last good revision. See LastGoodFallback.
malformed: Vec<String>Records that were not policies at all – malformed applicability
or another structural problem. Already source-labeled by whoever
called this.
registered: HashMap<String, PolicyId>The tree position every policy was registered at, by its id: a
built-in under its BuiltinPolicy::name, a startup or operator
record under the id it was compiled as – see
crate::compile::CompileReport::registered.
Trait Implementations§
Source§impl Clone for LoadReport
impl Clone for LoadReport
Source§fn clone(&self) -> LoadReport
fn clone(&self) -> LoadReport
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LoadReport
impl Debug for LoadReport
Source§impl Default for LoadReport
impl Default for LoadReport
Source§fn default() -> LoadReport
fn default() -> LoadReport
Auto Trait Implementations§
impl Freeze for LoadReport
impl RefUnwindSafe for LoadReport
impl Send for LoadReport
impl Sync for LoadReport
impl Unpin for LoadReport
impl UnsafeUnpin for LoadReport
impl UnwindSafe for LoadReport
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more