]>
git.proxmox.com Git - rustc.git/blob - vendor/petgraph/benches/stable_graph.rs
6 use petgraph
::prelude
::*;
13 use petgraph
::stable_graph
::node_index
;
16 fn full_edges_default(bench
: &mut Bencher
) {
17 let a
= stable_digraph().full_a();
18 bench
.iter(|| a
.edges(node_index(1)).count())
22 fn full_edges_out(bench
: &mut Bencher
) {
23 let a
= stable_digraph().full_a();
24 bench
.iter(|| a
.edges_directed(node_index(1), Outgoing
).count())
28 fn full_edges_in(bench
: &mut Bencher
) {
29 let a
= stable_digraph().full_a();
30 bench
.iter(|| a
.edges_directed(node_index(1), Incoming
).count())
34 fn neighbors_default(bench
: &mut Bencher
) {
35 let a
= stable_digraph().full_a();
36 bench
.iter(|| a
.neighbors(node_index(1)).count())
40 fn neighbors_out(bench
: &mut Bencher
) {
41 let a
= stable_digraph().full_a();
42 bench
.iter(|| a
.neighbors_directed(node_index(1), Outgoing
).count())
46 fn neighbors_in(bench
: &mut Bencher
) {
47 let a
= stable_digraph().full_a();
48 bench
.iter(|| a
.neighbors_directed(node_index(1), Incoming
).count())
52 fn sccs_stable_graph(bench
: &mut Bencher
) {
53 let a
= stable_digraph().bigger();
54 bench
.iter(|| petgraph
::algo
::kosaraju_scc(&a
));
58 fn sccs_graph(bench
: &mut Bencher
) {
59 let a
= digraph().bigger();
60 bench
.iter(|| petgraph
::algo
::kosaraju_scc(&a
));
64 fn stable_graph_map(bench
: &mut Bencher
) {
65 let a
= stable_digraph().bigger();
66 bench
.iter(|| a
.map(|i
, _
| i
, |i
, _
| i
));
70 fn graph_map(bench
: &mut Bencher
) {
71 let a
= digraph().bigger();
72 bench
.iter(|| a
.map(|i
, _
| i
, |i
, _
| i
));
76 fn stable_graph_retain_nodes(bench
: &mut Bencher
) {
77 let mut a
= stable_digraph().bigger();
78 bench
.iter(|| a
.retain_nodes(|_gr
, i
| (i
.index() + 1) % 3700 != 0));
82 fn stable_graph_retain_edges(bench
: &mut Bencher
) {
83 let mut a
= stable_digraph().bigger();
84 bench
.iter(|| a
.retain_edges(|_gr
, i
| (i
.index() + 1) % 3700 != 0));