void LensCompositionTet() { var moveTurtle = from x in TurtleX.ModS(x => x + 10) from y in TurtleY.ModS(y => y + 10) select Tuple.Create(x, y); var turtle1 = new Turtle("bob", new Position(x: 10, y: -2)); var result = moveTurtle.Run(turtle1); Console.WriteLine(result); Assert.AreEqual(result.Item2.Item1, 20); Assert.AreEqual(result.Item2.Item2, 8); }
public static StateEither <ParserState <T>, string, uint> MoveNext() { return (Index.ModS(n => n + 1).ToStateEither <ParserState <T>, string, uint>()); }