pub struct StatsCollector {
pub scalar_count: usize,
pub object_count: usize,
pub list_count: usize,
pub node_count: usize,
pub max_depth: usize,
}Expand description
Statistics collector visitor for testing and analysis.
Fields§
§scalar_count: usizeNumber of scalars visited.
object_count: usizeNumber of objects visited.
list_count: usizeNumber of lists visited.
node_count: usizeNumber of nodes visited.
max_depth: usizeMaximum depth reached.
Trait Implementations§
Source§impl Debug for StatsCollector
impl Debug for StatsCollector
Source§impl Default for StatsCollector
impl Default for StatsCollector
Source§fn default() -> StatsCollector
fn default() -> StatsCollector
Returns the “default value” for a type. Read more
Source§impl DocumentVisitor for StatsCollector
impl DocumentVisitor for StatsCollector
Source§type Error = Infallible
type Error = Infallible
Error type returned by visitor methods.
Source§fn visit_scalar(
&mut self,
_key: &str,
_value: &Value,
ctx: &VisitorContext<'_>,
) -> Result<(), Self::Error>
fn visit_scalar( &mut self, _key: &str, _value: &Value, ctx: &VisitorContext<'_>, ) -> Result<(), Self::Error>
Called when visiting a scalar value.
Source§fn begin_object(
&mut self,
_key: &str,
ctx: &VisitorContext<'_>,
) -> Result<(), Self::Error>
fn begin_object( &mut self, _key: &str, ctx: &VisitorContext<'_>, ) -> Result<(), Self::Error>
Called at the start of an object (before visiting children).
Source§fn begin_list(
&mut self,
_key: &str,
_list: &MatrixList,
ctx: &VisitorContext<'_>,
) -> Result<(), Self::Error>
fn begin_list( &mut self, _key: &str, _list: &MatrixList, ctx: &VisitorContext<'_>, ) -> Result<(), Self::Error>
Called at the start of a matrix list (before visiting rows).
Source§fn visit_node(
&mut self,
_node: &Node,
_schema: &[String],
ctx: &VisitorContext<'_>,
) -> Result<(), Self::Error>
fn visit_node( &mut self, _node: &Node, _schema: &[String], ctx: &VisitorContext<'_>, ) -> Result<(), Self::Error>
Called when visiting a node (row) in a matrix list.
Source§fn begin_document(
&mut self,
_doc: &Document,
_ctx: &VisitorContext<'_>,
) -> Result<(), Self::Error>
fn begin_document( &mut self, _doc: &Document, _ctx: &VisitorContext<'_>, ) -> Result<(), Self::Error>
Called at the start of document traversal.
Source§fn end_document(
&mut self,
_doc: &Document,
_ctx: &VisitorContext<'_>,
) -> Result<(), Self::Error>
fn end_document( &mut self, _doc: &Document, _ctx: &VisitorContext<'_>, ) -> Result<(), Self::Error>
Called at the end of document traversal.
Source§fn end_object(
&mut self,
_key: &str,
_ctx: &VisitorContext<'_>,
) -> Result<(), Self::Error>
fn end_object( &mut self, _key: &str, _ctx: &VisitorContext<'_>, ) -> Result<(), Self::Error>
Called at the end of an object (after visiting children).
Source§fn end_list(
&mut self,
_key: &str,
_list: &MatrixList,
_ctx: &VisitorContext<'_>,
) -> Result<(), Self::Error>
fn end_list( &mut self, _key: &str, _list: &MatrixList, _ctx: &VisitorContext<'_>, ) -> Result<(), Self::Error>
Called at the end of a matrix list (after visiting rows).
Source§fn begin_node_children(
&mut self,
_node: &Node,
_ctx: &VisitorContext<'_>,
) -> Result<(), Self::Error>
fn begin_node_children( &mut self, _node: &Node, _ctx: &VisitorContext<'_>, ) -> Result<(), Self::Error>
Called at the start of a node’s children (nested entities).
Source§fn end_node_children(
&mut self,
_node: &Node,
_ctx: &VisitorContext<'_>,
) -> Result<(), Self::Error>
fn end_node_children( &mut self, _node: &Node, _ctx: &VisitorContext<'_>, ) -> Result<(), Self::Error>
Called at the end of a node’s children.
Auto Trait Implementations§
impl Freeze for StatsCollector
impl RefUnwindSafe for StatsCollector
impl Send for StatsCollector
impl Sync for StatsCollector
impl Unpin for StatsCollector
impl UnwindSafe for StatsCollector
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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