pub struct FullCallGraph { /* private fields */ }
Expand description

Full call graph including execution time and number of calls between functions/spans.

This graph is a directed graph linking different SpanTiming by the number of time a given span was the child of another one.

Examples

Code that looks like this

#[time_graph::instrument]
fn start() {
    inside();
    inside();
    inner();
}

#[time_graph::instrument]
fn inside() {
   inner();
}

#[time_graph::instrument]
fn inner() {
    // do stuff
}

Will result in a graph like this, where the number near the edge correspond to the number of time a given span called another one.

            | start, called 1 |
               /           |
             /  2          |
           /               |  1
  | inside, called 2 |     |
                \          |
                2 \        |
                    \      |
                 | inner, called 3 |

Implementations

Get the full list of spans/functions known by this graph

Get the list of calls between spans in this graph

Get the full graph in graphviz dot format.

The exact output is unstable and should not be relied on.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.