Graph.inEdges

Returns a range of in/outgoing edges of node n.

  1. auto inEdges(Node n)
  2. auto inEdges(Node n)
    struct Graph(Node, Weight = void, Flag!"isDirected" isDirected = No.isDirected, EdgePayload = void)
    const nothrow pure
    static if(isDirected)
    inEdges
    (
    Node n
    )
  3. alias inEdges = incidentEdges
  4. auto outEdges(Node n)
  5. auto outEdges(Node n)

Examples

import std.algorithm : equal;

auto g1 = Graph!(int, void, Yes.isDirected)([1, 2, 3]);

g1 ~= g1.edge(1, 1);
g1 ~= g1.edge(1, 2);
g1 ~= g1.edge(2, 2);
g1 ~= g1.edge(2, 3);

assert(g1.inEdges(1).equal([
    g1.edge(1, 1),
]));
assert(g1.outEdges(1).equal([
    g1.edge(1, 1),
    g1.edge(1, 2),
]));
assert(g1.inEdges(2).equal([
    g1.edge(1, 2),
    g1.edge(2, 2),
]));
assert(g1.outEdges(2).equal([
    g1.edge(2, 2),
    g1.edge(2, 3),
]));
assert(g1.inEdges(3).equal([
    g1.edge(2, 3),
]));
assert(g1.outEdges(3).empty);

Meta