Esempio n. 1
0
        private static void Execute(string v)
        {
            var path = parser.GeneratePath(v);
            var es   = path.Eval(term);

            if (es.Count == 0)
            {
                Console.WriteLine("Not a valid event.");
            }
            else if (es.Count > 1)
            {
                Console.WriteLine("Path selects more than one event, consider adding [0].");
            }
            else
            {
                try
                {
                    es.ElementAt(0).Execute();
                    Console.WriteLine(term.ToSource());
                    Console.WriteLine(term.PrintTree(true));
                    if (autoCompute)
                    {
                        Console.WriteLine("Auto computing:");
                        Console.WriteLine(term.AutoComputeToString());
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine("Execution of " + v + " failed because: " + e.Message);
                }
            }
        }
Esempio n. 2
0
        public void BasicPathParserTest()
        {
            string input = "A/B";
            var    p     = new ResedaParser();
            var    path  = p.GeneratePath(input);
            var    path2 = p.GeneratePath(path.ToSource());

            Assert.AreEqual(path.ToSource(), "A/B");
            Assert.AreEqual(path.ToSource(), path2.ToSource());
            System.Diagnostics.Debug.WriteLine(path.ToSource());
        }