コード例 #1
0
ファイル: TestTerminal.cs プロジェクト: uptown1919/Piglet
 public void TestMultipleDefinedTerminalWithDifferentRegEx()
 {
     try
     {
         var configurator = new ParserConfigurator<string>();
         configurator.CreateTerminal("abc", f => "abc");
         configurator.CreateTerminal("abc", f => "ABC");
         Assert.Fail("No exception for multiple definition of terminal with different regex");
     }
     catch (ParserConfigurationException)
     {
     }
 }
コード例 #2
0
 public void TestMultipleDefinedTerminalWithDifferentRegEx()
 {
     try
     {
         var configurator = new ParserConfigurator <string>();
         configurator.CreateTerminal("abc", f => "abc");
         configurator.CreateTerminal("abc", f => "ABC");
         Assert.Fail("No exception for multiple definition of terminal with different regex");
     }
     catch (ParserConfigurationException)
     {
     }
 }
コード例 #3
0
 public void AndReturns(Func <string, object> func)
 {
     // Create the terminal now to ensure that the tokens will be created in the right order
     terminal = (Terminal <object>)configurator.CreateTerminal(regex, func);
 }
コード例 #4
0
 private ITerminal <object>[] ParamsToTerminalArray(object[] p)
 {
     return(p.OfType <string>().Select(f => configurator.CreateTerminal(Regex.Escape(f)))
            .Concat(p.OfType <FluentExpression>().Select(f => f.Terminal)).ToArray());
 }