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)); }
private AnySurrogatePairTerminal(AnySurrogatePairTerminal other, ParserCloneArgs args) : base(other, args) { }