tokenizer.cpp

来自「konqueror3 embedded版本, KDE环境下的当家浏览器的嵌入式版」· C++ 代码 · 共 1,000 行 · 第 1/3 页

CPP
1,000
字号
/* * This file is part of the DOM implementation for KDE. * * Copyright (C) 2003 Lars Knoll (knoll@kde.org) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public License * along with this library; see the file COPYING.LIB.  If not, write to * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301, USA. *//* This file is mostly data generated by flex. Unfortunately flex   can't handle 16bit strings directly, so we just copy the part of   the code we need and modify it to our needs.   Most of the defines below are to make sure we can easily use the   flex generated code, using as little editing as possible.   The flex syntax to generate the lexer are more or less directly   copied from the CSS2.1 specs, with some fixes for comments and   the important symbol.   To regenerate, run flex on tokenizer.flex. After this, copy the   data tables and the YY_DECL method over to this file. Remove the   init code from YY_DECL and change the YY_END_OF_BUFFER to only call   yyterminate().*/// --------- begin generated code -------------------#define YY_NUM_RULES 50#define YY_END_OF_BUFFER 51static yyconst short int yy_accept[370] =    {   0,        0,    0,   51,   49,    2,    2,   49,   49,   49,   49,       49,   49,   49,   49,   49,   42,   49,   49,   49,   49,       11,   11,   11,   11,   49,   49,    2,    0,    0,    0,       10,    0,   13,    0,    8,    0,    0,    9,    0,    0,        0,   11,   11,   42,    0,   41,    0,    0,   42,   47,        0,   40,   40,   40,   40,   40,   40,   40,   40,   40,       40,   40,   12,   40,   40,   37,    0,    0,    0,    0,        0,    0,    0,    0,   11,   11,    7,   46,   11,    0,       11,    0,   11,   11,    0,   11,    6,    5,    0,    0,        0,   10,    0,    0,   13,   13,    0,    0,   10,    0,        0,    4,   12,   40,   40,   40,    0,    0,   42,   47,       40,   40,   40,   40,   47,   40,   40,   40,    0,   40,       40,   28,   40,   24,   26,   40,   38,   30,   40,   29,       36,   40,   32,   31,   27,   40,    0,    0,    0,    0,        0,    0,    0,    0,   11,   11,   11,   11,   12,   11,       11,    0,   47,   11,    0,    0,    0,   13,    0,    0,       40,    0,    1,   42,   47,   40,   40,   40,   40,   47,       40,   40,   47,   40,   40,   40,   40,   33,   40,   39,       12,   34,    3,    0,    0,    0,    0,    0,    0,    0,       11,   11,   11,   43,    0,    0,   47,   46,    0,    0,       13,    0,    0,    0,   42,   47,   40,   40,   40,   40,       47,   40,   40,   47,   47,   40,   40,   40,   35,    0,        0,    0,    0,    0,    0,   15,   11,   11,   11,   48,        0,   47,    0,    0,    0,    0,   45,    0,    0,    0,       13,    0,   42,   47,   40,   40,   40,   40,   47,   40,       40,   47,   47,   47,   40,   40,   25,    0,    0,    0,        0,   16,    0,   11,   11,   11,   48,    0,   47,    0,        0,    0,    0,    0,    0,    0,    0,    0,   45,    0,        0,    0,    0,   13,    0,   42,   40,   40,    0,    0,        0,   14,    0,   11,   11,   48,    0,   47,    0,   44,        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,        0,    0,    0,   13,    0,   40,   40,    0,   18,    0,        0,   11,   48,    0,   47,    0,   44,    0,    0,    0,       44,    0,    0,    0,    0,   40,    0,    0,    0,    0,        0,   48,    0,    0,    0,   23,    0,    0,    0,   17,       19,   48,    0,    0,    0,    0,    0,    0,    0,    0,        0,    0,   20,    0,    0,    0,   21,   22,    0    } ;static yyconst int yy_ec[256] =    {   0,        1,    1,    1,    1,    1,    1,    1,    1,    2,    3,        1,    4,    5,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    6,    7,    8,    9,   10,   11,   12,   13,   14,       15,   16,   17,   12,   18,   19,   20,   21,   21,   21,       21,   21,   21,   21,   21,   21,   21,   12,   12,   22,       23,   24,   25,   26,   30,   31,   32,   33,   34,   35,       36,   37,   38,   39,   40,   41,   42,   43,   44,   45,       46,   47,   48,   49,   50,   51,   39,   52,   39,   53,       12,   27,   12,   28,   29,   12,   30,   31,   32,   33,       34,   35,   36,   37,   38,   39,   40,   41,   42,   43,       44,   45,   46,   47,   48,   49,   50,   51,   39,   52,       39,   53,   12,   54,   12,   55,    1,   56,   56,   56,       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,       56,   56,   56,   56,   56    } ;static yyconst int yy_meta[57] =    {   0,        1,    2,    3,    3,    3,    4,    4,    4,    4,    4,        4,    4,    4,    5,    4,    4,    4,    6,    4,    4,        6,    4,    4,    4,    4,    4,    7,    4,    7,    7,        7,    7,    7,    7,    7,    7,    7,    7,    7,    7,        7,    7,    7,    7,    7,    7,    7,    7,    7,    7,        7,    7,    7,    4,    4,    7    } ;static yyconst short int yy_base[393] =    {   0,        0,    0,  855, 1871,   55,   60,   65,   64,  814,  817,       60,  814,   56,  815,  819,   93,  827,   63,  126,  802,       61,  148,   75,  137,  800,  799,  183,  188,  779,   70,     1871,  225,  793,  174, 1871,   63,  259, 1871,  782,   64,      180,   82,  149,  276,  789, 1871,  777,  782,  210,  777,      244,   53,  299,  759,  766,   42,  121,  143,   73,  772,      128,  175,  207,  221,   83,  770,  778,  742,  744,  735,      735,  742,  745,  737,  189,  333, 1871, 1871,  205,  282,      348,  739,  326,  222,  363,  240, 1871, 1871,  706,  296,      144,  145,  397,  431,  723,  465,  315,  224,  255,  499,      533, 1871,  180,  242,   52,  318,  733,  101,  416,  723,      518,  705,  712,  246,  720,  716,  567,  715,  574,  172,        0,  714,  704,  712,  711,  147,  693,  692,  194,  690,      688,  275,  687,  686,  678,  294,  686,  666,  672,  657,      654,  665,  642,  647,  582,  273,  616,  608,  659,  329,      330,  634,  654,  332,  634,  212,  640,  655,  328,  661,      325,  661, 1871,  676,  638,  691,  620,  620,  320,  628,        0,  609,  619,  697,  609,  731,  358,  608,  344,  607,      383,  605, 1871,  582,  583,  579,  583,  588,  591,  590,      723,  738,  753, 1871,  759,  777,  598,  811,  564,  797,      812,  818,  594,  370,  833,  571,  848,  551,  558,  364,      566,    0,  554,  564,  561,  854,  869,  347,  558,  542,      535,  564,  534,  549,  514, 1871,  875,  890,  905,  911,      929,  536,  963,  989,  258,  394, 1871, 1015,  498,  949,      975, 1022, 1037, 1871,  517,  349,  381,  430, 1871,  513,      384, 1871, 1871, 1871, 1043, 1058,  484,  452,  457,  455,      440, 1871,  443, 1064, 1079, 1094, 1100, 1118,  460,  472,      411,  504, 1152,  396, 1186, 1220, 1246, 1272, 1298, 1324,     1358,  454, 1137, 1171, 1206,    0, 1232, 1258,  465,  432,      423, 1871,  415,  511, 1284, 1365, 1383,  418,  572, 1871,      452,  417, 1338, 1417, 1451,  515,  399, 1430, 1485, 1519,     1504,  379, 1526, 1534, 1541,  553, 1549,  494, 1871,  385,      382,  519, 1556,  395, 1871, 1465,  432,  446, 1564, 1598,      429,  467, 1584, 1599,  338,  654,  341,  301,  319,  314,      291, 1605, 1620, 1626, 1641, 1871,  290,  264,  242, 1871,     1871, 1871, 1647, 1662, 1668,  209,  204,  172, 1683, 1689,     1704,  152, 1871,  116, 1710, 1725, 1871, 1871, 1871, 1759,     1761, 1767, 1769, 1773, 1776, 1782, 1786, 1792, 1799,  108,     1803, 1805, 1809, 1816, 1820, 1827, 1833, 1839, 1845, 1851,     1857, 1863    } ;static yyconst short int yy_def[393] =    {   0,      369,    1,  369,  369,  369,  369,  369,  370,  371,  369,      372,  369,  373,  369,  369,  369,  369,  369,  374,  369,      375,  375,  375,  375,  369,  369,  369,  369,  369,  370,      369,  376,  371,  377,  369,  372,  378,  369,  369,  369,      374,  375,  375,   16,  379,  369,  380,  369,   16,  369,      381,  382,  382,   53,   53,   53,  382,  382,  382,  382,      382,  382,  382,  382,  382,  382,  369,  369,  369,  369,      369,  369,  369,  369,  375,   22,  369,  369,  375,  383,       22,  369,  375,  375,  369,  375,  369,  369,  369,  370,      370,  370,  370,  376,  371,  371,  372,  372,  372,  372,      378,  369,  369,  382,  382,  382,  379,  384,   16,  369,       53,  111,  111,  111,  369,  382,  382,  382,  385,  382,      111,  382,  111,  382,  382,  382,  382,  382,  382,  382,      382,  382,  382,  382,  382,  382,  369,  369,  369,  369,      369,  369,  369,  369,   76,  375,   76,   22,  369,  375,      375,  369,  369,  375,  369,  370,   93,   96,  372,  100,      382,  386,  369,   16,  369,  111,  166,  166,  166,  369,      166,  166,  369,  117,  382,  117,  382,  382,  382,  382,      382,  382,  369,  369,  369,  369,  369,  369,  369,  369,       76,  147,   22,  369,  369,  369,  369,  387,  369,   93,       96,  100,  386,  384,   16,  369,  166,  207,  207,  207,      369,  207,  207,  369,  369,  117,  176,  382,  382,  369,      369,  369,  369,  369,  369,  369,   76,  147,   22,  369,      369,  369,  387,  387,  388,  389,  369,  390,  369,   93,       96,  100,   16,  369,  382,  382,  382,  382,  369,  382,      382,  369,  369,  369,  117,  176,  382,  369,  369,  369,      369,  369,  369,   76,  147,   22,  369,  369,  369,  369,      388,  369,  391,  389,  392,  387,  387,  387,  387,  387,      390,  369,   93,   96,  100,  243,  117,  176,  369,  369,      369,  369,  369,  266,  147,  369,  369,  369,  369,  369,      388,  388,  388,  388,  391,  389,  389,  389,  389,  392,      280,  369,   93,   96,  100,  382,  176,  369,  369,  369,      369,  266,  369,  369,  369,  388,  388,  388,  304,  389,      389,  389,  309,  280,  369,  382,  369,  369,  369,  369,      369,  369,  304,  309,  280,  369,  369,  369,  369,  369,      369,  369,  304,  309,  280,  369,  369,  369,  304,  309,      280,  369,  369,  369,  304,  309,  369,  369,    0,  369,      369,  369,  369,  369,  369,  369,  369,  369,  369,  369,      369,  369,  369,  369,  369,  369,  369,  369,  369,  369,      369,  369    } ;static yyconst short int yy_nxt[1928] =    {   0,        4,    5,    6,    5,    5,    5,    7,    8,    9,   10,        4,    4,   11,    4,    4,   12,    4,   13,   14,   15,       16,   17,    4,    4,    4,   18,   19,   20,   21,   22,       22,   22,   22,   22,   22,   21,   21,   21,   21,   21,       21,   21,   23,   21,   21,   21,   21,   21,   21,   24,       21,   21,   21,   25,   26,   21,   27,   27,   27,   27,       27,   27,   27,   27,   27,   27,   28,   28,   28,   28,       28,   31,   31,   39,   78,   31,   40,   31,  119,  119,       68,  120,   41,  124,   40,  161,   37,   80,   78,   37,       32,   82,   83,  125,   69,   78,   32,   70,   43,  119,       71,   80,   29,   46,   72,   73,  103,   74,   80,  119,       47,   48,  136,   49,   60,  128,  108,   50,   84,   51,      163,   52,   53,   53,   54,   55,   56,   53,   57,   58,       59,   60,   61,   60,   62,   63,   60,   64,   60,   65,       66,   60,   60,   60,   60,   60,   76,  119,   60,  368,       78,   31,   31,   85,  119,   76,   76,   76,   76,   76,       76,   78,   78,   80,  129,   82,   83,  126,   81,  119,       32,   32,   50,  119,   80,   80,  179,   81,   81,   81,       81,   81,   81,   86,   27,   27,   27,   27,   27,   28,       28,   28,   28,   28,   96,  127,   82,   82,  119,  367,       76,  119,   78,   96,   96,   96,   96,   96,   96,   76,       76,   76,   76,   76,   76,   80,  130,  177,   78,   31,      119,  364,  131,   82,  132,   29,   30,   30,   30,   90,      109,   80,   92,  119,  110,   78,   31,  363,   32,  111,      111,  112,  113,  114,  111,   93,  180,  119,   80,  362,       37,   94,  133,   78,   93,   93,   93,   93,   93,   93,       36,   36,   36,   97,  117,  272,   80,   31,  119,  134,      151,   99,  135,  117,  117,  117,  117,  117,  117,  100,      154,   37,  358,  122,  273,  101,   78,  124,  100,  100,      100,  100,  100,  100,  369,  181,   44,  125,   30,   80,      369,  119,  147,   31,  357,   60,   60,  104,  105,  106,       60,  147,  147,  147,  147,  147,  147,   36,   60,  121,      119,  356,   32,  110,  351,  119,  182,   31,  121,  121,      121,  121,  121,  121,   75,   75,   75,   75,   75,   78,       31,   37,   78,  194,  119,  198,  150,  350,  349,  150,      348,  119,   80,  145,   37,   80,   80,  369,   80,  124,      178,  124,  145,  145,  145,  145,  145,  145,  148,  125,      119,  125,  110,  119,  347,  119,  219,  148,  148,  148,      148,  148,  148,  152,  119,  204,  346,  153,  257,  163,      122,  218,  152,  152,  152,  152,  152,  152,   91,  156,      156,  156,   91,  181,   31,  124,  272,  119,  272,  119,      119,  272,  195,  341,  161,  125,  340,  157,  272,  178,      275,  335,  275,   32,  272,  275,  157,  157,  157,  157,      157,  157,   30,   30,   30,   90,  164,  273,   92,  272,      165,  272,  325,  273,  321,  166,  166,  167,  168,  169,      166,   93,  320,  272,  271,  275,  119,   94,  273,  272,       93,   93,   93,   93,   93,   93,   95,   95,   95,   95,       95,  124,  273,  270,  270,  270,  270,  270,  273,  272,      319,  125,  318,  312,  298,  158,  237,  293,  292,  291,      290,   34,  289,  275,  158,  158,  158,  158,  158,  158,       98,  159,  159,  159,   98,  299,  299,  299,  299,  299,      119,   31,   75,   75,   75,   75,   75,  274,  300,  160,      146,  146,  146,  146,  146,   37,  337,  272,  160,  160,      160,  160,  160,  160,   36,   36,   36,   97,  171,  119,      338,  275,  165,  119,  339,   99,  282,  171,  171,  171,      171,  171,  171,  100,  116,  116,  116,  116,  116,  101,      269,  263,  100,  100,  100,  100,  100,  100,  116,  116,      116,  116,  116,  299,  299,  299,  299,  299,  262,  119,      261,  260,  259,  258,  119,  254,  300,  174,  253,  178,      252,  251,  122,  119,  176,  249,  174,  174,  174,  174,      174,  174,  191,  176,  176,  176,  176,  176,  176,  204,      239,  191,  191,  191,  191,  191,  191,  146,  146,  146,      146,  146,  232,  226,  225,  224,  223,  222,  193,  221,      220,  119,  165,  119,  119,  119,  192,  193,  193,  193,      193,  193,  193,  215,  178,  192,  192,  192,  192,  192,      192,  195,  214,  213,  196,  175,  175,  175,  175,  175,      200,  122,  211,  196,  196,  196,  196,  196,  196,  200,      200,  200,  200,  200,  200,  201,  204,  199,  197,  149,      119,  202,  190,  189,  201,  201,  201,  201,  201,  201,      202,  202,  202,  202,  202,  202,  205,  188,  187,  186,      206,  185,  184,  183,  119,  207,  207,  208,  209,  210,      207,  212,  119,  119,  119,  206,  119,  216,  119,  119,      212,  212,  212,  212,  212,  212,  216,  216,  216,  216,      216,  216,  175,  175,  175,  175,  175,  119,  119,  178,      119,  119,  119,  227,  173,  172,  122,  170,  108,   34,      155,  217,  227,  227,  227,  227,  227,  227,  228,  149,      217,  217,  217,  217,  217,  217,  144,  228,  228,  228,      228,  228,  228,  229,  143,  142,  141,  206,  140,  230,      139,  138,  229,  229,  229,  229,  229,  229,  230,  230,      230,  230,  230,  230,  195,  137,  119,  231,  119,  123,      122,  115,   44,   51,  108,  102,  231,  231,  231,  231,      231,  231,  233,  233,  233,  233,  233,  240,  235,   34,       89,   88,   87,  236,   77,  237,  240,  240,  240,  240,      240,  240,  241,   67,   45,   44,   38,  238,  242,   35,       34,  241,  241,  241,  241,  241,  241,  242,  242,  242,      242,  242,  242,  243,  369,  369,  369,  244,  369,  369,      369,  369,  245,  245,  246,  247,  248,  245,  250,  369,      369,  369,  244,  369,  255,  369,  369,  250,  250,  250,      250,  250,  250,  255,  255,  255,  255,  255,  255,  256,      369,  369,  369,  369,  369,  264,  369,  369,  256,  256,      256,  256,  256,  256,  264,  264,  264,  264,  264,  264,      265,  369,  369,  369,  369,  369,  369,  369,  369,  265,      265,  265,  265,  265,  265,  266,  369,  369,  369,  244,      369,  267,  369,  369,  266,  266,  266,  266,  266,  266,      267,  267,  267,  267,  267,  267,  195,  369,  369,  268,      369,  369,  369,  369,  369,  369,  369,  369,  268,  268,      268,  268,  268,  268,  233,  233,  233,  233,  233,  283,      235,  369,  369,  369,  369,  236,  369,  237,  283,  283,      283,  283,  283,  283,  369,  369,  369,  369,  369,  238,

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?