Example #1
0
 public static Option <TripleMap1 <TPrimaryKey, TSecondary, TTertiary, TValue> > Contingent(IEnumerable <Tuple <TPrimaryKey, TSecondary, TTertiary, TValue> > entries) =>
 Map1.Contingent(entries.Select(x => Tuple.Create(x.Item1, Tuple.Create(x.Item2, x.Item3, x.Item4)))).Select(
     p =>
     new TripleMap1 <TPrimaryKey, TSecondary, TTertiary, TValue>(
         p,
         Map1.Insist(p.GetKeyValuePairs().Select(x => Tuple.Create(x.Item2.Item1, x.Item1))),
         Map1.Insist(p.GetKeyValuePairs().Select(x => Tuple.Create(x.Item2.Item2, x.Item1)))));
Example #2
0
 public static TwinMap1 <TPrimaryKey, TSecondary, TValue> Build(Array1 <Tuple <TPrimaryKey, TSecondary, TValue> > entries) =>
 Map1.Build(entries.Select(x => Tuple.Create(x.Item1, Tuple.Create(x.Item2, x.Item3)))).Let(
     p =>
     new TwinMap1 <TPrimaryKey, TSecondary, TValue>(
         p,
         Map1.Insist(p.GetKeyValuePairs().Select(x => Tuple.Create(x.Item2.Item1, x.Item1)))));