public void TestAnySurrogatePair()
        {
            var chars = string.Format("{0},{1},{2}",
                                      char.ConvertFromUtf32(0x10000),
                                      char.ConvertFromUtf32(0x87FFF),
                                      char.ConvertFromUtf32(0x10FFFF));

            var grammar = new Grammar();
            var parser  = new AnySurrogatePairTerminal();

            grammar.Inner = (+parser.Named("char")).SeparatedBy(",");

            var match = grammar.Match(chars);

            Assert.True(match.Success, match.ErrorMessage);
            Assert.Equal(new object[] { 0x10000, 0x87FFF, 0x10FFFF }, match.Find("char").Select(parser.GetValue));
        }
示例#2
0
 private AnySurrogatePairTerminal(AnySurrogatePairTerminal other, ParserCloneArgs args)
     : base(other, args)
 {
 }
        private AnySurrogatePairTerminal(AnySurrogatePairTerminal other, ParserCloneArgs args)
			: base(other, args)
		{
		}