Crate inspect

source ·
Expand description

This module implements the inspect framework, which allows an object to expose its state for diagnostics purposes as a hierarchy. All such subtrees are linked together into a single tree for the process, and clients can query information from arbitrary portions of the tree by path.

To participate in the tree, an object implements the Inspect trait and arranges for itself to be inspected, usually automatically via an existing parent-child relationship.

For most cases, users should use the derive version of Inspect as this will automatically update the implementation as new fields are added.

Structs§

Enums§

  • A node resolution error.
  • The request type associated with ExternalRequest.
  • A node of an inspect result.
  • The sensitivity level for an inspection node or request. Requests will only return nodes at or below their sensitivity level. For example, a request set to SensitivityLevel::Safe will not return nodes with SensitivityLevel::Sensitive or SensitivityLevel::Unknown.
  • The different kinds of values that can be emitted.

Traits§

  • Trait implemented by objects whose state can be inspected but not mutated.
  • Trait implemented by objects whose state can be inspected and mutated. Most users should not implement this trait directly, but instead derive InspectMut.

Functions§

  • Returns an object that implements Inspect by calling f with the inspection request.
  • Returns an object that implements InspectMut by calling f with the inspection request.
  • Inspects obj for state at path.
  • Wraps an iterator for inspection, using the index in the enumeration as the field name.
  • Wraps an iterator for inspection.
  • Updates a value in obj at path to value value.

Derive Macros§