Esempio n. 1
0
        private static IParser <SqlExpression> Surrounded(IParser <TextSpan> mark)
        {
            var doubleQuotation = Parse.Seq(mark, mark).Merge();
            var notMark         = mark.Not().ThenRight(Parse.AnyChars(1));

            return(from start1 in mark
                   from body1 in Parse.Any(doubleQuotation, notMark).Many()
                   from end1 in mark
                   select new SqlExpression()
            {
                TextSpan = body1.Length == 0 ?
                           new[] { start1, end1 }.GetTextSpan() :
                new[] { start1, body1, end1 }.GetTextSpan()
            });
        }
Esempio n. 2
0
 public void Not_then_anyChar1()
 {
     GivenText("a");
     WhenParse(Parse.Equal("b").Not().ThenRight(Parse.AnyChars(1)));
     ThenResultShouldBe("a");
 }