コード例 #1
0
        public void TokenManyFailsWithPartialItemMatch()
        {
            var ab   = Token.EqualTo('a').Then(_ => Token.EqualTo('b'));
            var list = ab.Many();

            AssertParser.Fails(list, "ababa");
        }
コード例 #2
0
 public void AtLeastOnceFailsWithNone()
 {
     AssertParser.Fails(Character.EqualTo('a').AtLeastOnce(), "");
 }
コード例 #3
0
 public void TokenThenFailsIfSecondParserFails()
 {
     AssertParser.Fails(Token.EqualTo('a').Then(_ => Token.EqualTo('b')), "ac");
 }
コード例 #4
0
 public void ThenFailsIfSecondParserFails()
 {
     AssertParser.Fails(Character.EqualTo('a').Then(_ => Character.EqualTo('b')), "ac");
 }
 public void ValueFailsIfPrecedingParserFails()
 {
     AssertParser.Fails(Character.EqualTo('a').Value(42), "b");
 }
 public void TokenAtEndFailsIfThereIsARemainder()
 {
     AssertParser.Fails(Token.EqualTo('a').AtEnd(), "ab");
 }
 public void AtEndFailsIfThereIsARemainder()
 {
     AssertParser.Fails(Character.EqualTo('a').AtEnd(), "ab");
 }
 public void Parse_Unquoted_Failure(string input)
 {
     AssertParser.Fails(Parsers.QuotedStringLiteral, input);
 }
コード例 #9
0
 public void BetweenFailsIfLeftParserFails()
 {
     AssertParser.Fails(Character.EqualTo('a').Between(Character.EqualTo('('), Character.EqualTo(')')), "{a)");
 }
コード例 #10
0
 public void TokenBetweenFailsIfMiddleParserFails()
 {
     AssertParser.Fails(Token.EqualTo('a').Between(Token.EqualTo('('), Token.EqualTo(')')), "(b)");
 }
コード例 #11
0
 public void TokenBetweenFailsIfRightParserFails()
 {
     AssertParser.Fails(Token.EqualTo('a').Between(Token.EqualTo('('), Token.EqualTo(')')), "(a}");
 }
コード例 #12
0
 public void TokenBetweenFailsIfLeftParserFails()
 {
     AssertParser.Fails(Token.EqualTo('a').Between(Token.EqualTo('('), Token.EqualTo(')')), "{a)");
 }
コード例 #13
0
 public void BetweenFailsIfMiddleParserFails()
 {
     AssertParser.Fails(Character.EqualTo('a').Between(Character.EqualTo('('), Character.EqualTo(')')), "(b)");
 }
コード例 #14
0
 public void BetweenFailsIfRightParserFails()
 {
     AssertParser.Fails(Character.EqualTo('a').Between(Character.EqualTo('('), Character.EqualTo(')')), "(a}");
 }
コード例 #15
0
 public void TokenAtLeastOnceFailsWithNone()
 {
     AssertParser.Fails(Token.EqualTo('a').AtLeastOnce(), "");
 }
コード例 #16
0
 public void TokenOrFailsWithPartialFirstMatch()
 {
     AssertParser.Fails(Token.EqualTo('a').Then(_ => Token.EqualTo('b')).Or(Token.EqualTo('a')), "a");
 }
コード例 #17
0
 public void Parse_Failure(string input)
 {
     AssertParser.Fails(Parsers.ItemMetadata, input);
 }
コード例 #18
0
 public void Parse_Failure(string input)
 {
     AssertParser.Fails(Tokens.Identifier, input);
 }
 public void Parse_Without_ClosingQuote_Failure(string input)
 {
     AssertParser.Fails(Parsers.QuotedStringLiteral, input);
 }
コード例 #20
0
 public void OrFailsWithNone()
 {
     AssertParser.Fails(Character.EqualTo('a').Or(Character.EqualTo('b')), "");
 }
コード例 #21
0
 public void AtEndFailsIfThePrecedingParserFails()
 {
     AssertParser.Fails(Character.EqualTo('b').AtEnd(), "a");
 }
コード例 #22
0
 public void OrFailsWithUnmatched()
 {
     AssertParser.Fails(Character.EqualTo('a').Or(Character.EqualTo('b')), "c");
 }
コード例 #23
0
 public void TokenAtEndFailsIfThePrecedingParserFails()
 {
     AssertParser.Fails(Token.EqualTo('b').AtEnd(), "a");
 }
コード例 #24
0
 public void OrFailsWithPartialFirstMatch()
 {
     AssertParser.Fails(Character.EqualTo('a').Then(_ => Character.EqualTo('b')).Or(Character.EqualTo('a')), "a");
 }
コード例 #25
0
 public void SelectFailsIfPrecedingParserFails()
 {
     AssertParser.Fails(Character.EqualTo('a').Select(_ => 42), "b");
 }
コード例 #26
0
 public void TokenOrFailsWithNone()
 {
     AssertParser.Fails(Token.EqualTo('a').Or(Token.EqualTo('b')), "");
 }
コード例 #27
0
 public void TokenThenFailsIfFirstParserFails()
 {
     AssertParser.Fails(Token.EqualTo('a').Then(_ => Token.EqualTo('b')), "cb");
 }
コード例 #28
0
 public void TokenOrFailsWithUnmatched()
 {
     AssertParser.Fails(Token.EqualTo('a').Or(Token.EqualTo('b')), "c");
 }
コード例 #29
0
 public void ThenFailsIfFirstParserFails()
 {
     AssertParser.Fails(Character.EqualTo('a').Then(_ => Character.EqualTo('b')), "cb");
 }
コード例 #30
0
 public void Parse_Symbol_Failure(string input)
 {
     AssertParser.Fails(Parsers.TypeRef, input);
 }