static PegGrammarParser()
        {
            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('a','z'),
                   new OptimizedCharset.Range('A','Z'),
                   };
               char[] oneOfChars = new char[]    {',',')','(','{','}'
                                                  ,'_'};
               optimizedCharset0= new OptimizedCharset(ranges,oneOfChars, true);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","static","virtual","sealed",
                  "override","abstract","extern","unsafe" };
               optimizedLiterals0= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","static","readonly","volatile",
                  "unsafe" };
               optimizedLiterals1= new OptimizedLiterals(literals);
            }
        }
        static C_KernighanRitchie2()
        {
            {
               char[] oneOfChars = new char[]    {'\'','"','?','\\','a'
                                                  ,'b','f','n','r','t'
                                                  ,'v'};
               optimizedCharset0= new OptimizedCharset(null,oneOfChars);
            }

            {
               string[] literals=
               { "*=","/=","%=","+=","-=","<<=",">>=","&=",
                  "^=","|=" };
               optimizedLiterals0= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "auto","register","static","extern","typedef","void","char","short",
                  "int","long","float","double","signed","unsigned","const","volatile",
                  "struct","union","enum","case","default","if","else","switch",
                  "goto","continue","break","return","sizeof","while","do","for" };
               optimizedLiterals1= new OptimizedLiterals(literals);
            }
        }
Beispiel #3
0
 static TestPeg()
 {
     {
         char[] oneOfChars = new char[]    { '[', '"', '\'', ':', '('
                                             , '{', '}', '}' };
         optimizedCharset0 = new OptimizedCharset(null, oneOfChars);
     }
 }
Beispiel #4
0
 static Altaxo_LabelV1()
 {
     {
         char[] oneOfChars = new char[]    { '"', '\\', '/', 'b', 'f'
                                             , 'n', 'r', 't' };
         optimizedCharset0 = new OptimizedCharset(null, oneOfChars);
     }
 }
Beispiel #5
0
 static json()
 {
     {
        char[] oneOfChars = new char[]    {'"','\\','/','b','f'
                                           ,'n','r','t'};
        optimizedCharset0= new OptimizedCharset(null,oneOfChars);
     }
 }
Beispiel #6
0
 static json()
 {
     {
         char[] oneOfChars = new char[]    { '"', '\\', '/', 'b', 'f'
                                             , 'n', 'r', 't' };
         optimizedCharset0 = new OptimizedCharset(null, oneOfChars);
     }
 }
 static TestPeg()
 {
     {
        char[] oneOfChars = new char[]    {'[','"','\'',':','('
                                           ,'{','}','}'};
        optimizedCharset0= new OptimizedCharset(null,oneOfChars);
     }
 }
Beispiel #8
0
        static EMail()
        {
            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('A','Z'),
                   new OptimizedCharset.Range('a','z'),
                   new OptimizedCharset.Range('0','9'),
                   };
               char[] oneOfChars = new char[]    {'-','.','!','#','$'
                                                  ,'%','&','\'','*','+'
                                                  ,'/','=','?','^','_'
                                                  ,'`','{','|','}','~'
                                                  ,'@',',','[',']',' '
                                                  };
               optimizedCharset0= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('A','Z'),
                   new OptimizedCharset.Range('a','z'),
                   new OptimizedCharset.Range('0','9'),
                   new OptimizedCharset.Range('+','/'),
                   };
               char[] oneOfChars = new char[]    {'.','!','#','$','%'
                                                  ,'&','\'','*','=','?'
                                                  ,'^','_','`','{','|'
                                                  ,'}','~','@',',','"'
                                                  ,'\\','[',']'};
               optimizedCharset1= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u0001','\u0008'),
                   new OptimizedCharset.Range('\u000e','\u001f'),
                   new OptimizedCharset.Range('\u0021','\u0027'),
                   new OptimizedCharset.Range('\u002a','\u005b'),
                   new OptimizedCharset.Range('\u005d','\u007e'),
                   };
               char[] oneOfChars = new char[]    {'\u000b','\u000c','\u007f'};
               optimizedCharset2= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('A','Z'),
                   new OptimizedCharset.Range('a','z'),
                   new OptimizedCharset.Range('0','9'),
                   };
               char[] oneOfChars = new char[]    {'-','!','#','$','%'
                                                  ,'&','\'','*','+','/'
                                                  ,'=','?','^','_','`'
                                                  ,'{','|','}','~'};
               optimizedCharset3= new OptimizedCharset(ranges,oneOfChars);
            }
        }
Beispiel #9
0
        static EMail()
        {
            {
                OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                { new OptimizedCharset.Range('A', 'Z'),
                  new OptimizedCharset.Range('a', 'z'),
                  new OptimizedCharset.Range('0', '9'), };
                char[] oneOfChars = new char[]    { '-', '.', '!', '#', '$'
                                                    , '%', '&', '\'', '*', '+'
                                                    , '/', '=', '?', '^', '_'
                                                    , '`', '{', '|', '}', '~'
                                                    , '@', ',', '[', ']', ' ' };
                optimizedCharset0 = new OptimizedCharset(ranges, oneOfChars);
            }

            {
                OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                { new OptimizedCharset.Range('A', 'Z'),
                  new OptimizedCharset.Range('a', 'z'),
                  new OptimizedCharset.Range('0', '9'),
                  new OptimizedCharset.Range('+', '/'), };
                char[] oneOfChars = new char[]    { '.', '!', '#', '$', '%'
                                                    , '&', '\'', '*', '=', '?'
                                                    , '^', '_', '`', '{', '|'
                                                    , '}', '~', '@', ',', '"'
                                                    , '\\', '[', ']' };
                optimizedCharset1 = new OptimizedCharset(ranges, oneOfChars);
            }

            {
                OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                { new OptimizedCharset.Range('\u0001', '\u0008'),
                  new OptimizedCharset.Range('\u000e', '\u001f'),
                  new OptimizedCharset.Range('\u0021', '\u0027'),
                  new OptimizedCharset.Range('\u002a', '\u005b'),
                  new OptimizedCharset.Range('\u005d', '\u007e'), };
                char[] oneOfChars = new char[]    { '\u000b', '\u000c', '\u007f' };
                optimizedCharset2 = new OptimizedCharset(ranges, oneOfChars);
            }

            {
                OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                { new OptimizedCharset.Range('A', 'Z'),
                  new OptimizedCharset.Range('a', 'z'),
                  new OptimizedCharset.Range('0', '9'), };
                char[] oneOfChars = new char[]    { '-', '!', '#', '$', '%'
                                                    , '&', '\'', '*', '+', '/'
                                                    , '=', '?', '^', '_', '`'
                                                    , '{', '|', '}', '~' };
                optimizedCharset3 = new OptimizedCharset(ranges, oneOfChars);
            }
        }
Beispiel #10
0
        static nLess()
        {
            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('a','z'),
                   new OptimizedCharset.Range('A','Z'),
                   new OptimizedCharset.Range('0','9'),
                   };
               char[] oneOfChars = new char[]    {'-','_','%','$','/'
                                                  ,'.','&','=',':',';'
                                                  ,'#','+','?'};
               optimizedCharset0= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('a','z'),
                   new OptimizedCharset.Range('A','Z'),
                   new OptimizedCharset.Range('0','9'),
                   };
               char[] oneOfChars = new char[]    {'-','_','%','*','/'
                                                  ,'.','&','=',':',','
                                                  ,'#','+','?',' ','\\'
                                                  ,'[',']','(',')'};
               optimizedCharset1= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('a','z'),
                   new OptimizedCharset.Range('A','Z'),
                   new OptimizedCharset.Range('0','9'),
                   };
               char[] oneOfChars = new char[]    {'-','_','%','$','/'
                                                  ,'.','&','=',':',';'
                                                  ,'#','+','?'};
               optimizedCharset2= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               string[] literals=
               { "px","em","pc","%","ex","s","pt","cm",
                  "mm" };
               optimizedLiterals0= new OptimizedLiterals(literals);
            }
        }
Beispiel #11
0
        static ExcelFormula()
        {
            {
                OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                { new OptimizedCharset.Range('A', 'Z'),
                  new OptimizedCharset.Range('a', 'z'),
                  new OptimizedCharset.Range('0', '9'),
                  new OptimizedCharset.Range(',', '.'), };
                char[] oneOfChars = new char[]    { '!', '"', '#', '$', '%'
                                                    , '&', '(', ')', '+', ';'
                                                    , '<', '=', '>', '@', '^'
                                                    , '_', '`', '{', '|', '}'
                                                    , '~', ' ' };
                optimizedCharset0 = new OptimizedCharset(ranges, oneOfChars);
            }

            {
                OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                { new OptimizedCharset.Range('A', 'Z'),
                  new OptimizedCharset.Range('a', 'z'),
                  new OptimizedCharset.Range('0', '9'),
                  new OptimizedCharset.Range(',', '.'), };
                char[] oneOfChars = new char[]    { '!', '"', '#', '$', '%'
                                                    , '&', '(', ')', '*', '+'
                                                    , '/', ':', ';', '<', '='
                                                    , '>', '?', '@', '\\', '^'
                                                    , '_', '`', '{', '|', '}'
                                                    , '~' };
                optimizedCharset1 = new OptimizedCharset(ranges, oneOfChars);
            }


            {
                string[] literals =
                { "<>", ">=", "<=", "^", "*", "/", "+", "-",
                  "&",   "=",  "<",  ">" };
                optimizedLiterals0 = new OptimizedLiterals(literals);
            }
        }
        static ExcelFormula()
        {
            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('A','Z'),
                   new OptimizedCharset.Range('a','z'),
                   new OptimizedCharset.Range('0','9'),
                   new OptimizedCharset.Range(',','.'),
                   };
               char[] oneOfChars = new char[]    {'!','"','#','$','%'
                                                  ,'&','(',')','+',';'
                                                  ,'<','=','>','@','^'
                                                  ,'_','`','{','|','}'
                                                  ,'~',' '};
               optimizedCharset0= new OptimizedCharset(ranges,oneOfChars);
            }
            
            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('A','Z'),
                   new OptimizedCharset.Range('a','z'),
                   new OptimizedCharset.Range('0','9'),
                   new OptimizedCharset.Range(',','.'),
                   };
               char[] oneOfChars = new char[]    {'!','"','#','$','%'
                                                  ,'&','(',')','*','+'
                                                  ,'/',':',';','<','='
                                                  ,'>','?','@','\\','^'
                                                  ,'_','`','{','|','}'
                                                  ,'~'};
               optimizedCharset1= new OptimizedCharset(ranges,oneOfChars);
            }
            
            
            {
               string[] literals=
               { "<>",">=","<=","^","*","/","+","-",
                  "&","=","<",">" };
               optimizedLiterals0= new OptimizedLiterals(literals);
            }

            
        }
Beispiel #13
0
		static Altaxo_LabelV1()
		{
			{
				char[] oneOfChars = new char[]    {'"','\\','/','b','f'
                                                  ,'n','r','t'};
				optimizedCharset0 = new OptimizedCharset(null, oneOfChars);
			}
		}
Beispiel #14
0
        static CSharp3()
        {
            {
               char[] oneOfChars = new char[]    {'\'','"','\\','0','a'
                                                  ,'b','f','n','r','t'
                                                  ,'v'};
               optimizedCharset0= new OptimizedCharset(null,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u2000','\u200a'),
                   };
               char[] oneOfChars = new char[]    {'\u0020','\u00a0','\u1680','\u180e','\u202f'
                                                  ,'\u205f','\u3000'};
               optimizedCharset1= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u0041','\u005a'),
                   new OptimizedCharset.Range('\u00c0','\u00d6'),
                   new OptimizedCharset.Range('\u00d8','\u00de'),
                   new OptimizedCharset.Range('\u0178','\u0179'),
                   new OptimizedCharset.Range('\u0181','\u0182'),
                   new OptimizedCharset.Range('\u0186','\u0187'),
                   new OptimizedCharset.Range('\u0189','\u018b'),
                   new OptimizedCharset.Range('\u018e','\u0191'),
                   new OptimizedCharset.Range('\u0193','\u0194'),
                   new OptimizedCharset.Range('\u0196','\u0198'),
                   new OptimizedCharset.Range('\u019c','\u019d'),
                   new OptimizedCharset.Range('\u019f','\u01a0'),
                   new OptimizedCharset.Range('\u01a6','\u01a7'),
                   new OptimizedCharset.Range('\u01ae','\u01af'),
                   new OptimizedCharset.Range('\u01b1','\u01b3'),
                   new OptimizedCharset.Range('\u01b7','\u01b8'),
                   new OptimizedCharset.Range('\u01f6','\u01f8'),
                   new OptimizedCharset.Range('\u0388','\u038a'),
                   new OptimizedCharset.Range('\u038e','\u038f'),
                   new OptimizedCharset.Range('\u0391','\u03a1'),
                   new OptimizedCharset.Range('\u03a3','\u03ab'),
                   new OptimizedCharset.Range('\u03d2','\u03d4'),
                   new OptimizedCharset.Range('\u03f9','\u03fa'),
                   new OptimizedCharset.Range('\u0400','\u042f'),
                   new OptimizedCharset.Range('\u04c0','\u04c1'),
                   new OptimizedCharset.Range('\u0531','\u0556'),
                   new OptimizedCharset.Range('\u10a0','\u10c5'),
                   new OptimizedCharset.Range('\u1f08','\u1f0f'),
                   new OptimizedCharset.Range('\u1f18','\u1f1d'),
                   new OptimizedCharset.Range('\u1f28','\u1f2f'),
                   new OptimizedCharset.Range('\u1f38','\u1f3f'),
                   new OptimizedCharset.Range('\u1f48','\u1f4d'),
                   new OptimizedCharset.Range('\u1f68','\u1f6f'),
                   new OptimizedCharset.Range('\u1fb8','\u1fbb'),
                   new OptimizedCharset.Range('\u1fc8','\u1fcb'),
                   new OptimizedCharset.Range('\u1fd8','\u1fdb'),
                   new OptimizedCharset.Range('\u1fe8','\u1fec'),
                   new OptimizedCharset.Range('\u1ff8','\u1ffb'),
                   new OptimizedCharset.Range('\u210b','\u210d'),
                   new OptimizedCharset.Range('\u2110','\u2112'),
                   new OptimizedCharset.Range('\u2119','\u211d'),
                   new OptimizedCharset.Range('\u212a','\u212d'),
                   new OptimizedCharset.Range('\u2130','\u2131'),
                   new OptimizedCharset.Range('\u213e','\u213f'),
                   new OptimizedCharset.Range('\uff21','\uff3a'),
                   };
               char[] oneOfChars = new char[]    {'\u0100','\u0102','\u0104','\u0106','\u0108'
                                                  ,'\u010a','\u010c','\u010e','\u0110','\u0112'
                                                  ,'\u0114','\u0116','\u0118','\u011a','\u011c'
                                                  ,'\u011e','\u0120','\u0122','\u0124','\u0126'
                                                  ,'\u0128','\u012a','\u012c','\u012e','\u0130'
                                                  ,'\u0132','\u0134','\u0136','\u0139','\u013b'
                                                  ,'\u013d','\u013f','\u0141','\u0143','\u0145'
                                                  ,'\u0147','\u014a','\u014c','\u014e','\u0150'
                                                  ,'\u0152','\u0154','\u0156','\u0158','\u015a'
                                                  ,'\u015c','\u015e','\u0160','\u0162','\u0164'
                                                  ,'\u0166','\u0168','\u016a','\u016c','\u016e'
                                                  ,'\u0170','\u0172','\u0174','\u0176','\u017b'
                                                  ,'\u017d','\u0184','\u01a2','\u01a4','\u01a9'
                                                  ,'\u01ac','\u01b5','\u01bc','\u01c4','\u01c7'
                                                  ,'\u01ca','\u01cd','\u01cf','\u01d1','\u01d3'
                                                  ,'\u01d5','\u01d7','\u01d9','\u01db','\u01de'
                                                  ,'\u01e0','\u01e2','\u01e4','\u01e6','\u01e8'
                                                  ,'\u01ea','\u01ec','\u01ee','\u01f1','\u01f4'
                                                  ,'\u01fa','\u01fc','\u01fe','\u0200','\u0202'
                                                  ,'\u0204','\u0206','\u0208','\u020a','\u020c'
                                                  ,'\u020e','\u0210','\u0212','\u0214','\u0216'
                                                  ,'\u0218','\u021a','\u021c','\u021e','\u0220'
                                                  ,'\u0222','\u0224','\u0226','\u0228','\u022a'
                                                  ,'\u022c','\u022e','\u0230','\u0232','\u0386'
                                                  ,'\u038c','\u03d8','\u03da','\u03dc','\u03de'
                                                  ,'\u03e0','\u03e2','\u03e4','\u03e6','\u03e8'
                                                  ,'\u03ea','\u03ec','\u03ee','\u03f4','\u03f7'
                                                  ,'\u0460','\u0462','\u0464','\u0466','\u0468'
                                                  ,'\u046a','\u046c','\u046e','\u0470','\u0472'
                                                  ,'\u0474','\u0476','\u0478','\u047a','\u047c'
                                                  ,'\u047e','\u0480','\u048a','\u048c','\u048e'
                                                  ,'\u0490','\u0492','\u0494','\u0496','\u0498'
                                                  ,'\u049a','\u049c','\u049e','\u04a0','\u04a2'
                                                  ,'\u04a4','\u04a6','\u04a8','\u04aa','\u04ac'
                                                  ,'\u04ae','\u04b0','\u04b2','\u04b4','\u04b6'
                                                  ,'\u04b8','\u04ba','\u04bc','\u04be','\u04c3'
                                                  ,'\u04c5','\u04c7','\u04c9','\u04cb','\u04cd'
                                                  ,'\u04d0','\u04d2','\u04d4','\u04d6','\u04d8'
                                                  ,'\u04da','\u04dc','\u04de','\u04e0','\u04e2'
                                                  ,'\u04e4','\u04e6','\u04e8','\u04ea','\u04ec'
                                                  ,'\u04ee','\u04f0','\u04f2','\u04f4','\u04f8'
                                                  ,'\u0500','\u0502','\u0504','\u0506','\u0508'
                                                  ,'\u050a','\u050c','\u050e','\u1e00','\u1e02'
                                                  ,'\u1e04','\u1e06','\u1e08','\u1e0a','\u1e0c'
                                                  ,'\u1e0e','\u1e10','\u1e12','\u1e14','\u1e16'
                                                  ,'\u1e18','\u1e1a','\u1e1c','\u1e1e','\u1e20'
                                                  ,'\u1e22','\u1e24','\u1e26','\u1e28','\u1e2a'
                                                  ,'\u1e2c','\u1e2e','\u1e30','\u1e32','\u1e34'
                                                  ,'\u1e36','\u1e38','\u1e3a','\u1e3c','\u1e3e'
                                                  ,'\u1e40','\u1e42','\u1e44','\u1e46','\u1e48'
                                                  ,'\u1e4a','\u1e4c','\u1e4e','\u1e50','\u1e52'
                                                  ,'\u1e54','\u1e56','\u1e58','\u1e5a','\u1e5c'
                                                  ,'\u1e5e','\u1e60','\u1e62','\u1e64','\u1e66'
                                                  ,'\u1e68','\u1e6a','\u1e6c','\u1e6e','\u1e70'
                                                  ,'\u1e72','\u1e74','\u1e76','\u1e78','\u1e7a'
                                                  ,'\u1e7c','\u1e7e','\u1e80','\u1e82','\u1e84'
                                                  ,'\u1e86','\u1e88','\u1e8a','\u1e8c','\u1e8e'
                                                  ,'\u1e90','\u1e92','\u1e94','\u1ea0','\u1ea2'
                                                  ,'\u1ea4','\u1ea6','\u1ea8','\u1eaa','\u1eac'
                                                  ,'\u1eae','\u1eb0','\u1eb2','\u1eb4','\u1eb6'
                                                  ,'\u1eb8','\u1eba','\u1ebc','\u1ebe','\u1ec0'
                                                  ,'\u1ec2','\u1ec4','\u1ec6','\u1ec8','\u1eca'
                                                  ,'\u1ecc','\u1ece','\u1ed0','\u1ed2','\u1ed4'
                                                  ,'\u1ed6','\u1ed8','\u1eda','\u1edc','\u1ede'
                                                  ,'\u1ee0','\u1ee2','\u1ee4','\u1ee6','\u1ee8'
                                                  ,'\u1eea','\u1eec','\u1eee','\u1ef0','\u1ef2'
                                                  ,'\u1ef4','\u1ef6','\u1ef8','\u1f59','\u1f5b'
                                                  ,'\u1f5d','\u1f5f','\u2102','\u2107','\u2115'
                                                  ,'\u2124','\u2126','\u2128','\u2133','\u2145'
                                                  };
               optimizedCharset2= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u0061','\u007a'),
                   new OptimizedCharset.Range('\u00df','\u00f6'),
                   new OptimizedCharset.Range('\u00f8','\u00ff'),
                   new OptimizedCharset.Range('\u0137','\u0138'),
                   new OptimizedCharset.Range('\u0148','\u0149'),
                   new OptimizedCharset.Range('\u017e','\u0180'),
                   new OptimizedCharset.Range('\u018c','\u018d'),
                   new OptimizedCharset.Range('\u0199','\u019b'),
                   new OptimizedCharset.Range('\u01aa','\u01ab'),
                   new OptimizedCharset.Range('\u01b9','\u01ba'),
                   new OptimizedCharset.Range('\u01bd','\u01bf'),
                   new OptimizedCharset.Range('\u01dc','\u01dd'),
                   new OptimizedCharset.Range('\u01ef','\u01f0'),
                   new OptimizedCharset.Range('\u0233','\u0236'),
                   new OptimizedCharset.Range('\u0250','\u02af'),
                   new OptimizedCharset.Range('\u03ac','\u03ce'),
                   new OptimizedCharset.Range('\u03d0','\u03d1'),
                   new OptimizedCharset.Range('\u03d5','\u03d7'),
                   new OptimizedCharset.Range('\u03ef','\u03f3'),
                   new OptimizedCharset.Range('\u0430','\u045f'),
                   new OptimizedCharset.Range('\u0561','\u0587'),
                   new OptimizedCharset.Range('\u1d00','\u1d2b'),
                   new OptimizedCharset.Range('\u1d62','\u1d6b'),
                   new OptimizedCharset.Range('\u1e95','\u1e9b'),
                   new OptimizedCharset.Range('\u1f00','\u1f07'),
                   new OptimizedCharset.Range('\u1f10','\u1f15'),
                   new OptimizedCharset.Range('\u1f20','\u1f27'),
                   new OptimizedCharset.Range('\u1f30','\u1f37'),
                   new OptimizedCharset.Range('\u1f40','\u1f45'),
                   new OptimizedCharset.Range('\u1f50','\u1f57'),
                   new OptimizedCharset.Range('\u1f60','\u1f67'),
                   new OptimizedCharset.Range('\u1f70','\u1f7d'),
                   new OptimizedCharset.Range('\u1f80','\u1f87'),
                   new OptimizedCharset.Range('\u1f90','\u1f97'),
                   new OptimizedCharset.Range('\u1fa0','\u1fa7'),
                   new OptimizedCharset.Range('\u1fb0','\u1fb4'),
                   new OptimizedCharset.Range('\u1fb6','\u1fb7'),
                   new OptimizedCharset.Range('\u1fc2','\u1fc4'),
                   new OptimizedCharset.Range('\u1fc6','\u1fc7'),
                   new OptimizedCharset.Range('\u1fd0','\u1fd3'),
                   new OptimizedCharset.Range('\u1fd6','\u1fd7'),
                   new OptimizedCharset.Range('\u1fe0','\u1fe7'),
                   new OptimizedCharset.Range('\u1ff2','\u1ff4'),
                   new OptimizedCharset.Range('\u1ff6','\u1ff7'),
                   new OptimizedCharset.Range('\u210e','\u210f'),
                   new OptimizedCharset.Range('\u2146','\u2149'),
                   new OptimizedCharset.Range('\ufb00','\ufb06'),
                   new OptimizedCharset.Range('\ufb13','\ufb17'),
                   new OptimizedCharset.Range('\uff41','\uff5a'),
                   };
               char[] oneOfChars = new char[]    {'\u00aa','\u00b5','\u00ba','\u0101','\u0103'
                                                  ,'\u0105','\u0107','\u0109','\u010b','\u010d'
                                                  ,'\u010f','\u0111','\u0113','\u0115','\u0117'
                                                  ,'\u0119','\u011b','\u011d','\u011f','\u0121'
                                                  ,'\u0123','\u0125','\u0127','\u0129','\u012b'
                                                  ,'\u012d','\u012f','\u0131','\u0133','\u0135'
                                                  ,'\u013a','\u013c','\u013e','\u0140','\u0142'
                                                  ,'\u0144','\u0146','\u014b','\u014d','\u014f'
                                                  ,'\u0151','\u0153','\u0155','\u0157','\u0159'
                                                  ,'\u015b','\u015d','\u015f','\u0161','\u0163'
                                                  ,'\u0165','\u0167','\u0169','\u016b','\u016d'
                                                  ,'\u016f','\u0171','\u0173','\u0175','\u0177'
                                                  ,'\u017a','\u017c','\u0183','\u0185','\u0188'
                                                  ,'\u0192','\u0195','\u019e','\u01a1','\u01a3'
                                                  ,'\u01a5','\u01a8','\u01ad','\u01b0','\u01b4'
                                                  ,'\u01b6','\u01c6','\u01c9','\u01cc','\u01ce'
                                                  ,'\u01d0','\u01d2','\u01d4','\u01d6','\u01d8'
                                                  ,'\u01da','\u01df','\u01e1','\u01e3','\u01e5'
                                                  ,'\u01e7','\u01e9','\u01eb','\u01ed','\u01f3'
                                                  ,'\u01f5','\u01f9','\u01fb','\u01fd','\u01ff'
                                                  ,'\u0201','\u0203','\u0205','\u0207','\u0209'
                                                  ,'\u020b','\u020d','\u020f','\u0211','\u0213'
                                                  ,'\u0215','\u0217','\u0219','\u021b','\u021d'
                                                  ,'\u021f','\u0221','\u0223','\u0225','\u0227'
                                                  ,'\u0229','\u022b','\u022d','\u022f','\u0231'
                                                  ,'\u0390','\u03d9','\u03db','\u03dd','\u03df'
                                                  ,'\u03e1','\u03e3','\u03e5','\u03e7','\u03e9'
                                                  ,'\u03eb','\u03ed','\u03f5','\u03f8','\u03fb'
                                                  ,'\u0461','\u0463','\u0465','\u0467','\u0469'
                                                  ,'\u046b','\u046d','\u046f','\u0471','\u0473'
                                                  ,'\u0475','\u0477','\u0479','\u047b','\u047d'
                                                  ,'\u047f','\u0481','\u048b','\u048d','\u048f'
                                                  ,'\u0491','\u0493','\u0495','\u0497','\u0499'
                                                  ,'\u049b','\u049d','\u049f','\u04a1','\u04a3'
                                                  ,'\u04a5','\u04a7','\u04a9','\u04ab','\u04ad'
                                                  ,'\u04af','\u04b1','\u04b3','\u04b5','\u04b7'
                                                  ,'\u04b9','\u04bb','\u04bd','\u04bf','\u04c2'
                                                  ,'\u04c4','\u04c6','\u04c8','\u04ca','\u04cc'
                                                  ,'\u04ce','\u04d1','\u04d3','\u04d5','\u04d7'
                                                  ,'\u04d9','\u04db','\u04dd','\u04df','\u04e1'
                                                  ,'\u04e3','\u04e5','\u04e7','\u04e9','\u04eb'
                                                  ,'\u04ed','\u04ef','\u04f1','\u04f3','\u04f5'
                                                  ,'\u04f9','\u0501','\u0503','\u0505','\u0507'
                                                  ,'\u0509','\u050b','\u050d','\u050f','\u1e01'
                                                  ,'\u1e03','\u1e05','\u1e07','\u1e09','\u1e0b'
                                                  ,'\u1e0d','\u1e0f','\u1e11','\u1e13','\u1e15'
                                                  ,'\u1e17','\u1e19','\u1e1b','\u1e1d','\u1e1f'
                                                  ,'\u1e21','\u1e23','\u1e25','\u1e27','\u1e29'
                                                  ,'\u1e2b','\u1e2d','\u1e2f','\u1e31','\u1e33'
                                                  ,'\u1e35','\u1e37','\u1e39','\u1e3b','\u1e3d'
                                                  ,'\u1e3f','\u1e41','\u1e43','\u1e45','\u1e47'
                                                  ,'\u1e49','\u1e4b','\u1e4d','\u1e4f','\u1e51'
                                                  ,'\u1e53','\u1e55','\u1e57','\u1e59','\u1e5b'
                                                  ,'\u1e5d','\u1e5f','\u1e61','\u1e63','\u1e65'
                                                  ,'\u1e67','\u1e69','\u1e6b','\u1e6d','\u1e6f'
                                                  ,'\u1e71','\u1e73','\u1e75','\u1e77','\u1e79'
                                                  ,'\u1e7b','\u1e7d','\u1e7f','\u1e81','\u1e83'
                                                  ,'\u1e85','\u1e87','\u1e89','\u1e8b','\u1e8d'
                                                  ,'\u1e8f','\u1e91','\u1e93','\u1ea1','\u1ea3'
                                                  ,'\u1ea5','\u1ea7','\u1ea9','\u1eab','\u1ead'
                                                  ,'\u1eaf','\u1eb1','\u1eb3','\u1eb5','\u1eb7'
                                                  ,'\u1eb9','\u1ebb','\u1ebd','\u1ebf','\u1ec1'
                                                  ,'\u1ec3','\u1ec5','\u1ec7','\u1ec9','\u1ecb'
                                                  ,'\u1ecd','\u1ecf','\u1ed1','\u1ed3','\u1ed5'
                                                  ,'\u1ed7','\u1ed9','\u1edb','\u1edd','\u1edf'
                                                  ,'\u1ee1','\u1ee3','\u1ee5','\u1ee7','\u1ee9'
                                                  ,'\u1eeb','\u1eed','\u1eef','\u1ef1','\u1ef3'
                                                  ,'\u1ef5','\u1ef7','\u1ef9','\u1fbe','\u2071'
                                                  ,'\u207f','\u210a','\u2113','\u212f','\u2134'
                                                  ,'\u2139','\u213d'};
               optimizedCharset3= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u1f88','\u1f8f'),
                   new OptimizedCharset.Range('\u1f98','\u1f9f'),
                   new OptimizedCharset.Range('\u1fa8','\u1faf'),
                   };
               char[] oneOfChars = new char[]    {'\u01c5','\u01c8','\u01cb','\u01f2','\u1fbc'
                                                  ,'\u1fcc','\u1ffc'};
               optimizedCharset4= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u02b0','\u02c1'),
                   new OptimizedCharset.Range('\u02c6','\u02d1'),
                   new OptimizedCharset.Range('\u02e0','\u02e4'),
                   new OptimizedCharset.Range('\u06e5','\u06e6'),
                   new OptimizedCharset.Range('\u1d2c','\u1d61'),
                   new OptimizedCharset.Range('\u3031','\u3035'),
                   new OptimizedCharset.Range('\u309d','\u309e'),
                   new OptimizedCharset.Range('\u30fc','\u30fe'),
                   new OptimizedCharset.Range('\uff9e','\uff9f'),
                   };
               char[] oneOfChars = new char[]    {'\u02ee','\u037a','\u0559','\u0640','\u0e46'
                                                  ,'\u0ec6','\u17d7','\u1843','\u3005','\u303b'
                                                  ,'\uff70'};
               optimizedCharset5= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u01c0','\u01c3'),
                   new OptimizedCharset.Range('\u05d0','\u05ea'),
                   new OptimizedCharset.Range('\u05f0','\u05f2'),
                   new OptimizedCharset.Range('\u0621','\u063a'),
                   new OptimizedCharset.Range('\u0641','\u064a'),
                   new OptimizedCharset.Range('\u066e','\u066f'),
                   new OptimizedCharset.Range('\u0671','\u06d3'),
                   new OptimizedCharset.Range('\u06ee','\u06ef'),
                   new OptimizedCharset.Range('\u06fa','\u06fc'),
                   new OptimizedCharset.Range('\u0712','\u072f'),
                   new OptimizedCharset.Range('\u074d','\u074f'),
                   new OptimizedCharset.Range('\u0780','\u07a5'),
                   new OptimizedCharset.Range('\u0904','\u0939'),
                   new OptimizedCharset.Range('\u0958','\u0961'),
                   new OptimizedCharset.Range('\u0985','\u098c'),
                   new OptimizedCharset.Range('\u098f','\u0990'),
                   new OptimizedCharset.Range('\u0993','\u09a8'),
                   new OptimizedCharset.Range('\u09aa','\u09b0'),
                   new OptimizedCharset.Range('\u09b6','\u09b9'),
                   new OptimizedCharset.Range('\u09dc','\u09dd'),
                   new OptimizedCharset.Range('\u09df','\u09e1'),
                   new OptimizedCharset.Range('\u09f0','\u09f1'),
                   new OptimizedCharset.Range('\u0a05','\u0a0a'),
                   new OptimizedCharset.Range('\u0a0f','\u0a10'),
                   new OptimizedCharset.Range('\u0a13','\u0a28'),
                   new OptimizedCharset.Range('\u0a2a','\u0a30'),
                   new OptimizedCharset.Range('\u0a32','\u0a33'),
                   new OptimizedCharset.Range('\u0a35','\u0a36'),
                   new OptimizedCharset.Range('\u0a38','\u0a39'),
                   new OptimizedCharset.Range('\u0a59','\u0a5c'),
                   new OptimizedCharset.Range('\u0a72','\u0a74'),
                   new OptimizedCharset.Range('\u0a85','\u0a8d'),
                   new OptimizedCharset.Range('\u0a8f','\u0a91'),
                   new OptimizedCharset.Range('\u0a93','\u0aa8'),
                   new OptimizedCharset.Range('\u0aaa','\u0ab0'),
                   new OptimizedCharset.Range('\u0ab2','\u0ab3'),
                   new OptimizedCharset.Range('\u0ab5','\u0ab9'),
                   new OptimizedCharset.Range('\u0ae0','\u0ae1'),
                   new OptimizedCharset.Range('\u0b05','\u0b0c'),
                   new OptimizedCharset.Range('\u0b0f','\u0b10'),
                   new OptimizedCharset.Range('\u0b13','\u0b28'),
                   new OptimizedCharset.Range('\u0b2a','\u0b30'),
                   new OptimizedCharset.Range('\u0b32','\u0b33'),
                   new OptimizedCharset.Range('\u0b35','\u0b39'),
                   new OptimizedCharset.Range('\u0b5c','\u0b5d'),
                   new OptimizedCharset.Range('\u0b5f','\u0b61'),
                   new OptimizedCharset.Range('\u0b85','\u0b8a'),
                   new OptimizedCharset.Range('\u0b8e','\u0b90'),
                   new OptimizedCharset.Range('\u0b92','\u0b95'),
                   new OptimizedCharset.Range('\u0b99','\u0b9a'),
                   new OptimizedCharset.Range('\u0b9e','\u0b9f'),
                   new OptimizedCharset.Range('\u0ba3','\u0ba4'),
                   new OptimizedCharset.Range('\u0ba8','\u0baa'),
                   new OptimizedCharset.Range('\u0bae','\u0bb5'),
                   new OptimizedCharset.Range('\u0bb7','\u0bb9'),
                   new OptimizedCharset.Range('\u0c05','\u0c0c'),
                   new OptimizedCharset.Range('\u0c0e','\u0c10'),
                   new OptimizedCharset.Range('\u0c12','\u0c28'),
                   new OptimizedCharset.Range('\u0c2a','\u0c33'),
                   new OptimizedCharset.Range('\u0c35','\u0c39'),
                   new OptimizedCharset.Range('\u0c60','\u0c61'),
                   new OptimizedCharset.Range('\u0c85','\u0c8c'),
                   new OptimizedCharset.Range('\u0c8e','\u0c90'),
                   new OptimizedCharset.Range('\u0c92','\u0ca8'),
                   new OptimizedCharset.Range('\u0caa','\u0cb3'),
                   new OptimizedCharset.Range('\u0cb5','\u0cb9'),
                   new OptimizedCharset.Range('\u0ce0','\u0ce1'),
                   new OptimizedCharset.Range('\u0d05','\u0d0c'),
                   new OptimizedCharset.Range('\u0d0e','\u0d10'),
                   new OptimizedCharset.Range('\u0d12','\u0d28'),
                   new OptimizedCharset.Range('\u0d2a','\u0d39'),
                   new OptimizedCharset.Range('\u0d60','\u0d61'),
                   new OptimizedCharset.Range('\u0d85','\u0d96'),
                   new OptimizedCharset.Range('\u0d9a','\u0db1'),
                   new OptimizedCharset.Range('\u0db3','\u0dbb'),
                   new OptimizedCharset.Range('\u0dc0','\u0dc6'),
                   new OptimizedCharset.Range('\u0e01','\u0e30'),
                   new OptimizedCharset.Range('\u0e32','\u0e33'),
                   new OptimizedCharset.Range('\u0e40','\u0e45'),
                   new OptimizedCharset.Range('\u0e81','\u0e82'),
                   new OptimizedCharset.Range('\u0e87','\u0e88'),
                   new OptimizedCharset.Range('\u0e94','\u0e97'),
                   new OptimizedCharset.Range('\u0e99','\u0e9f'),
                   new OptimizedCharset.Range('\u0ea1','\u0ea3'),
                   new OptimizedCharset.Range('\u0eaa','\u0eab'),
                   new OptimizedCharset.Range('\u0ead','\u0eb0'),
                   new OptimizedCharset.Range('\u0eb2','\u0eb3'),
                   new OptimizedCharset.Range('\u0ec0','\u0ec4'),
                   new OptimizedCharset.Range('\u0edc','\u0edd'),
                   new OptimizedCharset.Range('\u0f40','\u0f47'),
                   new OptimizedCharset.Range('\u0f49','\u0f6a'),
                   new OptimizedCharset.Range('\u0f88','\u0f8b'),
                   new OptimizedCharset.Range('\u1000','\u1021'),
                   new OptimizedCharset.Range('\u1023','\u1027'),
                   new OptimizedCharset.Range('\u1029','\u102a'),
                   new OptimizedCharset.Range('\u1050','\u1055'),
                   new OptimizedCharset.Range('\u10d0','\u10f8'),
                   new OptimizedCharset.Range('\u1100','\u1159'),
                   new OptimizedCharset.Range('\u115f','\u11a2'),
                   new OptimizedCharset.Range('\u11a8','\u11f9'),
                   new OptimizedCharset.Range('\u1200','\u1206'),
                   new OptimizedCharset.Range('\u1208','\u1246'),
                   new OptimizedCharset.Range('\u124a','\u124d'),
                   new OptimizedCharset.Range('\u1250','\u1256'),
                   new OptimizedCharset.Range('\u125a','\u125d'),
                   new OptimizedCharset.Range('\u1260','\u1286'),
                   new OptimizedCharset.Range('\u128a','\u128d'),
                   new OptimizedCharset.Range('\u1290','\u12ae'),
                   new OptimizedCharset.Range('\u12b2','\u12b5'),
                   new OptimizedCharset.Range('\u12b8','\u12be'),
                   new OptimizedCharset.Range('\u12c2','\u12c5'),
                   new OptimizedCharset.Range('\u12c8','\u12ce'),
                   new OptimizedCharset.Range('\u12d0','\u12d6'),
                   new OptimizedCharset.Range('\u12d8','\u12ee'),
                   new OptimizedCharset.Range('\u12f0','\u130e'),
                   new OptimizedCharset.Range('\u1312','\u1315'),
                   new OptimizedCharset.Range('\u1318','\u131e'),
                   new OptimizedCharset.Range('\u1320','\u1346'),
                   new OptimizedCharset.Range('\u1348','\u135a'),
                   new OptimizedCharset.Range('\u13a0','\u13f4'),
                   new OptimizedCharset.Range('\u1401','\u166c'),
                   new OptimizedCharset.Range('\u166f','\u1676'),
                   new OptimizedCharset.Range('\u1681','\u169a'),
                   new OptimizedCharset.Range('\u16a0','\u16ea'),
                   new OptimizedCharset.Range('\u1700','\u170c'),
                   new OptimizedCharset.Range('\u170e','\u1711'),
                   new OptimizedCharset.Range('\u1720','\u1731'),
                   new OptimizedCharset.Range('\u1740','\u1751'),
                   new OptimizedCharset.Range('\u1760','\u176c'),
                   new OptimizedCharset.Range('\u176e','\u1770'),
                   new OptimizedCharset.Range('\u1780','\u17b3'),
                   new OptimizedCharset.Range('\u1820','\u1842'),
                   new OptimizedCharset.Range('\u1844','\u1877'),
                   new OptimizedCharset.Range('\u1880','\u18a8'),
                   new OptimizedCharset.Range('\u1900','\u191c'),
                   new OptimizedCharset.Range('\u1950','\u196d'),
                   new OptimizedCharset.Range('\u2135','\u2138'),
                   new OptimizedCharset.Range('\u3041','\u3096'),
                   new OptimizedCharset.Range('\u30a1','\u30fa'),
                   new OptimizedCharset.Range('\u3105','\u312c'),
                   new OptimizedCharset.Range('\u3131','\u318e'),
                   new OptimizedCharset.Range('\u31a0','\u31b7'),
                   new OptimizedCharset.Range('\u31f0','\u31ff'),
                   new OptimizedCharset.Range('\ua000','\ua48c'),
                   new OptimizedCharset.Range('\ufb1f','\ufb28'),
                   new OptimizedCharset.Range('\ufb2a','\ufb36'),
                   new OptimizedCharset.Range('\ufb38','\ufb3c'),
                   new OptimizedCharset.Range('\ufb40','\ufb41'),
                   new OptimizedCharset.Range('\ufb43','\ufb44'),
                   new OptimizedCharset.Range('\ufb46','\ufbb1'),
                   new OptimizedCharset.Range('\ufbd3','\ufd3d'),
                   new OptimizedCharset.Range('\ufd50','\ufd8f'),
                   new OptimizedCharset.Range('\ufd92','\ufdc7'),
                   new OptimizedCharset.Range('\ufdf0','\ufdfb'),
                   new OptimizedCharset.Range('\ufe70','\ufe74'),
                   new OptimizedCharset.Range('\ufe76','\ufefc'),
                   new OptimizedCharset.Range('\uff66','\uff6f'),
                   new OptimizedCharset.Range('\uff71','\uff9d'),
                   new OptimizedCharset.Range('\uffa0','\uffbe'),
                   new OptimizedCharset.Range('\uffc2','\uffc7'),
                   new OptimizedCharset.Range('\uffca','\uffcf'),
                   new OptimizedCharset.Range('\uffd2','\uffd7'),
                   new OptimizedCharset.Range('\uffda','\uffdc'),
                   };
               char[] oneOfChars = new char[]    {'\u01bb','\u06d5','\u06ff','\u0710','\u07b1'
                                                  ,'\u093d','\u0950','\u09b2','\u09bd','\u0a5e'
                                                  ,'\u0abd','\u0ad0','\u0b3d','\u0b71','\u0b83'
                                                  ,'\u0b9c','\u0cbd','\u0cde','\u0dbd','\u0e84'
                                                  ,'\u0e8a','\u0e8d','\u0ea5','\u0ea7','\u0ebd'
                                                  ,'\u0f00','\u1248','\u1258','\u1288','\u12b0'
                                                  ,'\u12c0','\u1310','\u17dc','\u3006','\u303c'
                                                  ,'\u309f','\u30ff','\u3400','\u4db5','\u4e00'
                                                  ,'\u9fa5','\uac00','\ud7a3','\ufb1d','\ufb3e'
                                                  };
               optimizedCharset6= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u0300','\u0357'),
                   new OptimizedCharset.Range('\u035d','\u036f'),
                   new OptimizedCharset.Range('\u0483','\u0486'),
                   new OptimizedCharset.Range('\u0591','\u05a1'),
                   new OptimizedCharset.Range('\u05a3','\u05b9'),
                   new OptimizedCharset.Range('\u05bb','\u05bd'),
                   new OptimizedCharset.Range('\u05c1','\u05c2'),
                   new OptimizedCharset.Range('\u0610','\u0615'),
                   new OptimizedCharset.Range('\u064b','\u0658'),
                   new OptimizedCharset.Range('\u06d6','\u06dc'),
                   new OptimizedCharset.Range('\u06df','\u06e4'),
                   new OptimizedCharset.Range('\u06e7','\u06e8'),
                   new OptimizedCharset.Range('\u06ea','\u06ed'),
                   new OptimizedCharset.Range('\u0730','\u074a'),
                   new OptimizedCharset.Range('\u07a6','\u07b0'),
                   new OptimizedCharset.Range('\u0901','\u0902'),
                   new OptimizedCharset.Range('\u0941','\u0948'),
                   new OptimizedCharset.Range('\u0951','\u0954'),
                   new OptimizedCharset.Range('\u0962','\u0963'),
                   new OptimizedCharset.Range('\u09c1','\u09c4'),
                   new OptimizedCharset.Range('\u09e2','\u09e3'),
                   new OptimizedCharset.Range('\u0a01','\u0a02'),
                   new OptimizedCharset.Range('\u0a41','\u0a42'),
                   new OptimizedCharset.Range('\u0a47','\u0a48'),
                   new OptimizedCharset.Range('\u0a4b','\u0a4d'),
                   new OptimizedCharset.Range('\u0a70','\u0a71'),
                   new OptimizedCharset.Range('\u0a81','\u0a82'),
                   new OptimizedCharset.Range('\u0ac1','\u0ac5'),
                   new OptimizedCharset.Range('\u0ac7','\u0ac8'),
                   new OptimizedCharset.Range('\u0ae2','\u0ae3'),
                   new OptimizedCharset.Range('\u0b41','\u0b43'),
                   new OptimizedCharset.Range('\u0c3e','\u0c40'),
                   new OptimizedCharset.Range('\u0c46','\u0c48'),
                   new OptimizedCharset.Range('\u0c4a','\u0c4d'),
                   new OptimizedCharset.Range('\u0c55','\u0c56'),
                   new OptimizedCharset.Range('\u0ccc','\u0ccd'),
                   new OptimizedCharset.Range('\u0d41','\u0d43'),
                   new OptimizedCharset.Range('\u0dd2','\u0dd4'),
                   new OptimizedCharset.Range('\u0e34','\u0e3a'),
                   new OptimizedCharset.Range('\u0e47','\u0e4e'),
                   new OptimizedCharset.Range('\u0eb4','\u0eb9'),
                   new OptimizedCharset.Range('\u0ebb','\u0ebc'),
                   new OptimizedCharset.Range('\u0ec8','\u0ecd'),
                   new OptimizedCharset.Range('\u0f18','\u0f19'),
                   new OptimizedCharset.Range('\u0f71','\u0f7e'),
                   new OptimizedCharset.Range('\u0f80','\u0f84'),
                   new OptimizedCharset.Range('\u0f86','\u0f87'),
                   new OptimizedCharset.Range('\u0f90','\u0f97'),
                   new OptimizedCharset.Range('\u0f99','\u0fbc'),
                   new OptimizedCharset.Range('\u102d','\u1030'),
                   new OptimizedCharset.Range('\u1036','\u1037'),
                   new OptimizedCharset.Range('\u1058','\u1059'),
                   new OptimizedCharset.Range('\u1712','\u1714'),
                   new OptimizedCharset.Range('\u1732','\u1734'),
                   new OptimizedCharset.Range('\u1752','\u1753'),
                   new OptimizedCharset.Range('\u1772','\u1773'),
                   new OptimizedCharset.Range('\u17b7','\u17bd'),
                   new OptimizedCharset.Range('\u17c9','\u17d3'),
                   new OptimizedCharset.Range('\u180b','\u180d'),
                   new OptimizedCharset.Range('\u1920','\u1922'),
                   new OptimizedCharset.Range('\u1927','\u1928'),
                   new OptimizedCharset.Range('\u1939','\u193b'),
                   new OptimizedCharset.Range('\u20d0','\u20dc'),
                   new OptimizedCharset.Range('\u20e5','\u20ea'),
                   new OptimizedCharset.Range('\u302a','\u302f'),
                   new OptimizedCharset.Range('\u3099','\u309a'),
                   new OptimizedCharset.Range('\ufe20','\ufe23'),
                   };
               char[] oneOfChars = new char[]    {'\u05bf','\u05c4','\u0670','\u0711','\u093c'
                                                  ,'\u094d','\u0981','\u09bc','\u09cd','\u0a3c'
                                                  ,'\u0abc','\u0acd','\u0b01','\u0b3c','\u0b3f'
                                                  ,'\u0b4d','\u0b56','\u0b82','\u0bc0','\u0bcd'
                                                  ,'\u0cbc','\u0cbf','\u0cc6','\u0d4d','\u0dca'
                                                  ,'\u0dd6','\u0e31','\u0eb1','\u0f35','\u0f37'
                                                  ,'\u0f39','\u0fc6','\u1032','\u1039','\u17c6'
                                                  ,'\u17dd','\u18a9','\u1932','\u20e1','\ufb1e'
                                                  };
               optimizedCharset7= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u093e','\u0940'),
                   new OptimizedCharset.Range('\u0949','\u094c'),
                   new OptimizedCharset.Range('\u0982','\u0983'),
                   new OptimizedCharset.Range('\u09be','\u09c0'),
                   new OptimizedCharset.Range('\u09c7','\u09c8'),
                   new OptimizedCharset.Range('\u09cb','\u09cc'),
                   new OptimizedCharset.Range('\u0a3e','\u0a40'),
                   new OptimizedCharset.Range('\u0abe','\u0ac0'),
                   new OptimizedCharset.Range('\u0acb','\u0acc'),
                   new OptimizedCharset.Range('\u0b02','\u0b03'),
                   new OptimizedCharset.Range('\u0b47','\u0b48'),
                   new OptimizedCharset.Range('\u0b4b','\u0b4c'),
                   new OptimizedCharset.Range('\u0bbe','\u0bbf'),
                   new OptimizedCharset.Range('\u0bc1','\u0bc2'),
                   new OptimizedCharset.Range('\u0bc6','\u0bc8'),
                   new OptimizedCharset.Range('\u0bca','\u0bcc'),
                   new OptimizedCharset.Range('\u0c01','\u0c03'),
                   new OptimizedCharset.Range('\u0c41','\u0c44'),
                   new OptimizedCharset.Range('\u0c82','\u0c83'),
                   new OptimizedCharset.Range('\u0cc0','\u0cc4'),
                   new OptimizedCharset.Range('\u0cc7','\u0cc8'),
                   new OptimizedCharset.Range('\u0cca','\u0ccb'),
                   new OptimizedCharset.Range('\u0cd5','\u0cd6'),
                   new OptimizedCharset.Range('\u0d02','\u0d03'),
                   new OptimizedCharset.Range('\u0d3e','\u0d40'),
                   new OptimizedCharset.Range('\u0d46','\u0d48'),
                   new OptimizedCharset.Range('\u0d4a','\u0d4c'),
                   new OptimizedCharset.Range('\u0d82','\u0d83'),
                   new OptimizedCharset.Range('\u0dcf','\u0dd1'),
                   new OptimizedCharset.Range('\u0dd8','\u0ddf'),
                   new OptimizedCharset.Range('\u0df2','\u0df3'),
                   new OptimizedCharset.Range('\u0f3e','\u0f3f'),
                   new OptimizedCharset.Range('\u1056','\u1057'),
                   new OptimizedCharset.Range('\u17be','\u17c5'),
                   new OptimizedCharset.Range('\u17c7','\u17c8'),
                   new OptimizedCharset.Range('\u1923','\u1926'),
                   new OptimizedCharset.Range('\u1929','\u192b'),
                   new OptimizedCharset.Range('\u1930','\u1931'),
                   new OptimizedCharset.Range('\u1933','\u1938'),
                   };
               char[] oneOfChars = new char[]    {'\u0903','\u09d7','\u0a03','\u0a83','\u0ac9'
                                                  ,'\u0b3e','\u0b40','\u0b57','\u0bd7','\u0cbe'
                                                  ,'\u0d57','\u0f7f','\u102c','\u1031','\u1038'
                                                  ,'\u17b6'};
               optimizedCharset8= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u0030','\u0039'),
                   new OptimizedCharset.Range('\u0660','\u0669'),
                   new OptimizedCharset.Range('\u06f0','\u06f9'),
                   new OptimizedCharset.Range('\u0966','\u096f'),
                   new OptimizedCharset.Range('\u09e6','\u09ef'),
                   new OptimizedCharset.Range('\u0a66','\u0a6f'),
                   new OptimizedCharset.Range('\u0ae6','\u0aef'),
                   new OptimizedCharset.Range('\u0b66','\u0b6f'),
                   new OptimizedCharset.Range('\u0be7','\u0bef'),
                   new OptimizedCharset.Range('\u0c66','\u0c6f'),
                   new OptimizedCharset.Range('\u0ce6','\u0cef'),
                   new OptimizedCharset.Range('\u0d66','\u0d6f'),
                   new OptimizedCharset.Range('\u0e50','\u0e59'),
                   new OptimizedCharset.Range('\u0ed0','\u0ed9'),
                   new OptimizedCharset.Range('\u0f20','\u0f29'),
                   new OptimizedCharset.Range('\u1040','\u1049'),
                   new OptimizedCharset.Range('\u1369','\u1371'),
                   new OptimizedCharset.Range('\u17e0','\u17e9'),
                   new OptimizedCharset.Range('\u1810','\u1819'),
                   new OptimizedCharset.Range('\u1946','\u194f'),
                   new OptimizedCharset.Range('\uff10','\uff19'),
                   };
               optimizedCharset9= new OptimizedCharset(ranges,null);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u203f','\u2040'),
                   new OptimizedCharset.Range('\ufe33','\ufe34'),
                   new OptimizedCharset.Range('\ufe4d','\ufe4f'),
                   };
               char[] oneOfChars = new char[]    {'\u005f','\u2054','\u30fb','\uff3f','\uff65'
                                                  };
               optimizedCharset10= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u0600','\u0603'),
                   new OptimizedCharset.Range('\u17b4','\u17b5'),
                   new OptimizedCharset.Range('\u200b','\u200f'),
                   new OptimizedCharset.Range('\u202a','\u202e'),
                   new OptimizedCharset.Range('\u2060','\u2063'),
                   new OptimizedCharset.Range('\u206a','\u206f'),
                   new OptimizedCharset.Range('\ufff9','\ufffb'),
                   };
               char[] oneOfChars = new char[]    {'\u00ad','\u06dd','\u070f','\ufeff'};
               optimizedCharset11= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               string[] literals=
               { "abstract","as","base","bool","break","byte","case","catch",
                  "char","checked","class","const","continue","decimal","default","delegate",
                  "do","double","else","enum","event","explicit","extern","false",
                  "finally","fixed","float","for","foreach","goto","if","implicit",
                  "in","int","interface","internal","is","lock","long","namespace",
                  "new","null","object","operator","out","override","params","private",
                  "protected","public","readonly","ref","return","sbyte","sealed","short",
                  "sizeof","stackalloc","static","string","struct","switch","this","throw",
                  "true","try","typeof","uint","ulong","unchecked","unsafe","ushort",
                  "using","virtual","void","volatile","while" };
               optimizedLiterals0= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "{","}","[","]","(",")",".",",",
                  ":",";","+","-","*"," /","%","&",
                  "|","^","!","~","=","<",">","?",
                  "??","::","++","--","&&","||","->","==",
                  "!=","<=",">=","+=","-=","*="," /=","%=",
                  "&=","|=","^=","<<",">>","<<=",">>=","=>" };
               optimizedLiterals1= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "sbyte","byte","short","ushort","int","uint","long","ulong",
                  "char" };
               optimizedLiterals2= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "bool","byte","char","decimal","double","float","int","long",
                  "object","sbyte","short","string","uint","ulong","ushort" };
               optimizedLiterals3= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","abstract","sealed","static",
                  "unsafe" };
               optimizedLiterals4= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","static","readonly","volatile",
                  "unsafe" };
               optimizedLiterals5= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","static","virtual","sealed",
                  "override","abstract","extern","unsafe" };
               optimizedLiterals6= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","static","virtual","sealed",
                  "override","abstract","extern","unsafe" };
               optimizedLiterals7= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","static","virtual","sealed",
                  "override","abstract","extern","unsafe" };
               optimizedLiterals8= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","virtual","sealed","override",
                  "abstract","extern","unsafe" };
               optimizedLiterals9= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "++","--","+","-","!","~","true","false" };
               optimizedLiterals10= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "+","-","*","/","%","&","|","^",
                  "<<",">>","==","!=",">=","<=",">","<" };
               optimizedLiterals11= new OptimizedLiterals(literals);
            }
        }
Beispiel #15
0
 public bool OneOf(OptimizedCharset cset)
 {
     if (pos_ < srcLen_ && cset.Matches(src_[pos_]))
     {
         ++pos_; return true;
     }
     return false;
 }
Beispiel #16
0
 public bool PlusRepeat(OptimizedCharset charset)
 {
     int pos0 = pos_;
     for (; pos_ < srcLen_ && charset.Matches(src_[pos_]); ++pos_) ;
     return pos_ > pos0;
 }
Beispiel #17
0
 public bool OptRepeat(OptimizedCharset charset)
 {
     for (; pos_ < srcLen_ && charset.Matches(src_[pos_]); ++pos_) ;
     return true;
 }
        static python_2_5_2_i()
        {
            {
               char[] oneOfChars = new char[]    {'\\','\'','"','a','b'
                                                  ,'f','n','r','t','v'
                                                  };
               optimizedCharset0= new OptimizedCharset(null,oneOfChars);
            }
            
            
            {
               string[] literals=
               { "+=","-=","*=","/=","%=","**=",">>=","<<=",
                  "&=","^=","/=","//=" };
               optimizedLiterals0= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "and","del","from","not","while","as","elif","global",
                  "or","with","assert","else","if","pass","yield","break",
                  "except","import","print","class","exec","in","raise","continue",
                  "finally","is","return","def","for","lambda","try" };
               optimizedLiterals1= new OptimizedLiterals(literals);
            }

            
        }
        static CSharp3Fast()
        {
            {
               char[] oneOfChars = new char[]    {'\'','"','\\','0','a'
                                                  ,'b','f','n','r','t'
                                                  ,'v'};
               optimizedCharset0= new OptimizedCharset(null,oneOfChars);
            }

            {
               OptimizedCharset.Range[] ranges = new OptimizedCharset.Range[]
                  {new OptimizedCharset.Range('\u2000','\u200a'),
                   };
               char[] oneOfChars = new char[]    {'\u0020','\u00a0','\u1680','\u180e','\u202f'
                                                  ,'\u205f','\u3000'};
               optimizedCharset1= new OptimizedCharset(ranges,oneOfChars);
            }

            {
               string[] literals=
               { "abstract","as","base","bool","break","byte","case","catch",
                  "char","checked","class","const","continue","decimal","default","delegate",
                  "do","double","else","enum","event","explicit","extern","false",
                  "finally","fixed","float","for","foreach","goto","if","implicit",
                  "in","int","interface","internal","is","lock","long","namespace",
                  "new","null","object","operator","out","override","params","private",
                  "protected","public","readonly","ref","return","sbyte","sealed","short",
                  "sizeof","stackalloc","static","string","struct","switch","this","throw",
                  "true","try","typeof","uint","ulong","unchecked","unsafe","ushort",
                  "using","virtual","void","volatile","while" };
               optimizedLiterals0= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "{","}","[","]","(",")",".",",",
                  ":",";","+","-","*"," /","%","&",
                  "|","^","!","~","=","<",">","?",
                  "??","::","++","--","&&","||","->","==",
                  "!=","<=",">=","+=","-=","*="," /=","%=",
                  "&=","|=","^=","<<",">>","<<=",">>=","=>" };
               optimizedLiterals1= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "sbyte","byte","short","ushort","int","uint","long","ulong",
                  "char" };
               optimizedLiterals2= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "bool","byte","char","decimal","double","float","int","long",
                  "object","sbyte","short","string","uint","ulong","ushort" };
               optimizedLiterals3= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","abstract","sealed","static",
                  "unsafe" };
               optimizedLiterals4= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","static","readonly","volatile",
                  "unsafe" };
               optimizedLiterals5= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","static","virtual","sealed",
                  "override","abstract","extern","unsafe" };
               optimizedLiterals6= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","static","virtual","sealed",
                  "override","abstract","extern","unsafe" };
               optimizedLiterals7= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","static","virtual","sealed",
                  "override","abstract","extern","unsafe" };
               optimizedLiterals8= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "new","public","protected","internal","private","virtual","sealed","override",
                  "abstract","extern","unsafe" };
               optimizedLiterals9= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "++","--","+","-","!","~","true","false" };
               optimizedLiterals10= new OptimizedLiterals(literals);
            }

            {
               string[] literals=
               { "+","-","*","/","%","&","|","^",
                  "<<",">>","==","!=",">=","<=",">","<" };
               optimizedLiterals11= new OptimizedLiterals(literals);
            }
        }