On Tuesday, 16 February 2016 at 08:04:29 UTC, Nordlöw wrote:
In my knowledge hypergraph I currently have a
struct Path
{
Node start;
Step[] steps;
}
struct Step
{
Fact fact;
Node node;
}
where Node and Fact a reference types (class).
I now want to implement
auto byLink(Path path);
so that it returns a lazy range of Links where
struct Link
{
Node source;
Fact fact;
Node destination;
}
In other Words, if I have a Path instance describing
N1 >=F1=> N2 >=F2=> N3
where
start: F1
and
steps: [(F1, N2), (F2, N3)]
I want byLink to return
[(N1, F1, N2), (N2, F2, N3)]
How do accomplish this?
I'm guessing std.range.zip should play a role here.
Something like this:
http://dpaste.dzfl.pl/de73cb4e7ac0
?