Expand description
Core types and traits for the inspect-rs introspection system.
This crate provides the fundamental Inspect trait and associated types
for building structured introspection of Rust values without coupling to
debuggers, serializers, or specific UI frameworks.
§Overview
The core model is:
Rust value
↓
Inspect::inspect()
↓
ValueRef (borrowed structured representation)
↓
renderers / tooling / analysis§Design principles
- Lazy: Values are not eagerly traversed
- Zero-copy: Borrows from original values where possible
- Safe: Handles cycles, respects limits, protects secrets
- Minimal: Zero runtime dependencies
§Example
use inspect_core::{Inspect, InspectCx};
let value = 42u32;
let mut cx = InspectCx::new();
let inspected = value.inspect(&mut cx);
assert_eq!(inspected.kind().name(), "u32");Structs§
- Capability
- Capabilities that an inspectable value supports.
- Depth
Guard - RAII guard for depth tracking.
- Field
Info - Metadata about a struct field or tuple element.
- Inspect
Cx - Context for an inspection session.
- Inspect
Limits - Limits to prevent pathological inspection behavior.
- Inspect
Path - A path through an inspected value tree.
- Type
Info - Metadata about a type being inspected.
- Value
Ref - A borrowed reference to an inspected value.
- Variant
Info - Metadata about an enum variant.
Enums§
- Children
- Children of an inspected value.
- Inspect
Error - Errors that can occur during inspection.
- Kind
- The kind of value being inspected.
- Path
Segment - A segment in an inspection path.
- Sensitivity
- Classification of data sensitivity for security-conscious rendering.
Traits§
- Inspect
- Provides structured introspection of a Rust value.
Type Aliases§
- Inspect
Result - Result type for inspection operations.