pl_scan.c

来自「postgresql8.3.4源码,开源数据库」· C语言 代码 · 共 2,225 行 · 第 1/5 页

C
2,225 行
字号
      372,  378,  378,  378,   24,   24,   24,   24,   24,   24,       24,   24,   24,   24,   24,   24,   24,   24,   24,  372,      379,  372,  380,  372,  372,  372,  381,  381,  382,  372,      383,  383,  372,  372,  372,  384,  385,  372,  372,  372,      372,  372,   24,  372,  386,   24,   24,   24,   24,   24,       24,   24,   24,   24,  372,   24,   24,   24,   24,   24,       24,   24,   24,   24,   24,   24,   24,   24,   24,   24,       24,   24,   24,   24,   24,   24,   24,   24,   24,   24,       24,   24,  372,  379,  372,  372,  372,  381,  372,  387,      372,  383,  372,  372,  388,  384,  385,  372,  372,  386,      389,  390,   24,   24,   24,   24,   24,   24,   24,   24,       24,   24,   24,   24,   24,   24,   24,   24,   24,   24,       24,   24,   24,   24,   24,   24,   24,  372,   24,   24,       24,   24,   24,   24,   24,   24,   24,   24,   24,   24,       24,   24,   24,   24,   24,  372,  387,  372,  372,  388,      391,  392,  372,  372,  389,  372,  372,  390,  372,  393,       24,   24,   24,   24,   24,   24,   24,   24,   24,   24,       24,   24,   24,   24,   24,   24,   24,   24,   24,   24,       24,   24,   24,  372,   24,   24,   24,   24,   24,   24,       24,   24,   24,   24,   24,   24,   24,   24,   24,   24,       24,  372,  372,  372,  391,  372,  372,  392,  372,  394,      372,  372,  372,  372,  393,  395,  396,   24,   24,   24,       24,   24,   24,   24,   24,   24,   24,   24,   24,   24,       24,   24,   24,  372,   24,   24,   24,   24,   24,   24,       24,   24,   24,   24,   24,   24,  372,  372,  372,  372,      372,  394,  397,  398,  372,  372,  372,  372,  395,  372,      372,  396,  372,   24,   24,   24,   24,   24,   24,   24,       24,   24,   24,  372,   24,   24,   24,   24,   24,   24,       24,   24,   24,   24,  372,  372,  372,  372,  372,  397,      372,  372,  398,  372,  372,  372,  372,  372,   24,   24,       24,   24,   24,   24,   24,  372,   24,   24,   24,   24,       24,  372,  372,  372,  372,  372,  372,  372,  372,  372,       24,   24,   24,   24,  372,   24,   24,  372,  372,  372,      372,  372,  372,  372,   24,   24,  372,   24,   24,  372,      372,  372,  372,  372,   24,   24,  372,  372,  372,   24,      372,    0,  372,  372,  372,  372,  372,  372,  372,  372,      372,  372,  372,  372,  372,  372,  372,  372,  372,  372,      372,  372,  372,  372,  372,  372,  372,  372    } ;static yyconst short int yy_nxt[1179] =    {   0,       10,   11,   12,   11,   13,   10,   14,   10,   15,   10,       16,   17,   18,   19,   20,   21,   10,   22,   23,   24,       25,   26,   27,   28,   29,   22,   30,   22,   31,   32,       33,   34,   35,   36,   37,   38,   22,   22,   39,   22,       22,   42,   42,   48,   45,   45,   52,   49,   53,   43,       43,   46,   46,   48,   50,   50,   50,   49,   50,   50,       50,   54,  371,   62,   62,   62,  369,  368,   55,   64,       62,   62,   62,   65,   72,   63,   64,   82,   73,  367,       65,   69,  364,   92,   70,   79,  363,  362,   74,   71,      361,   75,   63,   63,   80,   63,   81,   66,   62,   62,       62,   63,   63,   63,   64,   63,   63,   83,   65,   63,      360,   76,   63,   77,   84,  357,   63,   63,   85,   67,       63,   86,   78,   63,   63,   87,   88,   63,   63,   93,       63,   89,  354,   94,   63,   63,   63,   68,   90,   91,      123,   96,   95,   63,   63,  101,   63,   98,  118,   63,      119,   63,  102,   99,   63,  353,   97,   50,   50,   50,      352,   63,  100,   62,   62,   62,  112,   63,  351,   64,      113,  113,  113,   65,  350,  349,  114,   62,   62,   62,      115,  348,   55,   64,   63,   63,  124,   65,  120,  120,      120,  121,   63,   63,  125,  128,  129,  131,   63,  130,      126,   63,   63,   63,  127,   63,   63,  134,   63,   63,       63,   63,  132,   63,   63,  135,   63,  136,  133,   63,       63,  137,  138,   63,   63,  139,   63,   63,   63,  140,      345,   63,   63,   63,  340,   63,   63,  142,   63,  151,       63,  141,   63,   63,  339,  145,   63,   63,  143,  144,      161,   63,  146,  150,   63,  147,   63,   63,   63,   63,       63,   63,  148,  148,  148,   63,   63,  152,   63,   63,      153,   63,   63,   63,   63,  158,  168,   63,  169,   63,      159,  154,  160,   63,   63,  155,  156,   63,  157,   63,       63,   63,   63,   63,  164,  181,  149,   63,  165,   63,      194,   63,  162,  338,  163,  170,  170,  170,  171,   63,       63,   63,   63,   62,   62,   62,  112,   63,   63,   64,      113,  113,  113,   65,   63,  337,  114,   63,  182,  336,      115,  120,  120,  120,  121,  177,  177,  177,   63,   63,       63,  179,   63,   63,  189,  180,  311,   63,   63,   63,      183,  184,  185,  188,  187,  186,   63,   63,   63,  191,       63,   63,  190,   63,  192,   63,   63,   63,  193,  195,      197,   63,   63,   63,   63,   63,  196,  200,   63,   63,      198,   63,   63,   63,  199,  203,   63,  335,  201,   63,       63,   63,   63,   63,   63,   63,  202,   63,  205,  334,      333,   63,   63,   63,   63,  148,  148,  148,  206,   63,       63,   64,   63,   63,  208,   65,   63,  207,   63,  210,       63,  213,  209,   63,  214,  218,   63,   63,   63,   63,      211,   63,  212,   63,   63,  215,   63,  216,  204,   63,       63,   63,   63,   63,   63,   63,   63,   63,  217,  332,      219,   63,  221,  220,  170,  170,  170,  171,   63,  233,       63,  234,   63,   63,   63,  227,  227,  227,  326,  318,      240,  229,  280,  317,  238,  230,  177,  177,  177,  121,       63,   63,  179,  177,  177,  177,  180,   63,   63,  179,      177,  177,  177,  180,  241,  239,  179,   63,   63,   63,      180,  235,  235,  235,  236,   63,   63,  243,  245,   63,      242,  244,   63,   63,   63,   63,   63,   63,   63,   63,      249,  247,  248,   63,   63,   63,   63,   63,  246,  252,       63,   63,   63,  250,   63,   63,   63,   63,   63,  251,       63,   63,   63,   63,   63,   63,   63,  255,   63,   63,       63,  253,   63,   63,  257,   63,   63,  316,   63,   63,       63,  259,  256,   63,   63,   63,   63,   63,   63,   63,      260,   63,   63,   63,   63,   63,  258,   63,  262,   63,       63,  263,  264,   63,   63,  261,   63,   63,   63,  266,      265,  315,   63,   63,  270,   63,  271,   63,   63,  281,      281,  281,   63,  311,   63,  283,   63,   63,  227,  227,      227,  171,   63,   63,  229,  227,  227,  227,  230,  309,      308,  229,  227,  227,  227,  230,   63,  284,  229,   63,       63,   63,  230,  272,  272,  272,  273,  235,  235,  235,      236,   63,   63,   63,   63,   63,   63,   63,   63,   63,      285,  288,  286,  307,  287,  289,   63,  290,   63,   63,       63,   63,   63,   63,   63,   63,   63,  295,   63,   63,      297,  291,  306,   63,   63,  292,   63,   63,  305,  294,       63,  293,   63,   63,  296,   63,   63,   63,   63,   63,      298,   63,   63,   63,  300,   63,   63,  299,   63,  302,       63,  301,   63,  280,  278,  277,  304,   63,  276,  303,       63,   63,   63,  275,   63,  226,   63,  269,  268,  267,       63,  272,  272,  272,  273,  312,  312,  312,   63,  321,       63,  314,  281,  281,  281,  236,  319,   63,  283,  281,      281,  281,  281,  281,  281,  283,   63,   63,  283,   63,       63,  320,   63,   63,  325,   63,   63,  324,   63,   63,       63,   63,  322,  329,  323,  254,  327,   63,   63,   63,       63,   63,   63,   63,   63,  328,   63,   63,   63,   63,       63,   63,   63,  330,   63,  176,  331,   63,  232,  231,      226,   63,  224,  312,  312,  312,  273,   63,   63,  314,       63,  342,   63,  312,  312,  312,  312,  312,  312,  314,      341,   63,  314,   63,   63,   63,   63,   63,   63,   63,       63,   63,   63,  223,   63,  344,   63,  343,  109,   63,      346,   63,   63,   63,   63,   63,   63,   63,   63,   63,       63,  347,   63,   63,   63,  356,   63,  355,   63,   63,      358,   63,  365,   63,   63,   63,  366,   63,   63,   63,       63,   63,  359,  222,   63,  176,   63,   63,  174,  173,      370,   63,   63,   54,  111,   63,   63,   63,   63,   41,       41,   41,   41,   41,   41,   41,   41,   41,   41,   41,       44,   44,   44,   44,   44,   44,   44,   44,   44,   44,       44,   47,   47,   47,   47,   47,   47,   47,   47,   47,       47,   47,   51,   51,   51,   51,   51,   51,   51,   51,       51,   51,   51,   56,  109,  166,   60,   56,   56,   63,       63,   63,   54,   63,   63,  111,   63,   63,   63,  104,      104,  104,  104,  104,  104,  104,  111,  104,  104,  104,      106,  106,  109,  106,  106,  106,  106,  106,  106,  106,      106,  108,  108,  108,  108,  108,  107,  108,  108,  108,      108,  108,  110,  105,  103,   61,   60,  110,   52,   52,       52,   52,   52,   52,   52,   52,   52,   52,   52,  116,       59,   58,   57,  116,  116,  117,  117,  372,   40,  117,      117,  117,  117,  117,  117,  117,  122,  122,  122,  122,      372,  372,  372,  372,  372,  122,  167,  372,  372,  372,      167,  167,  172,  172,  172,  172,  372,  372,  372,  372,      372,  172,  175,  175,  175,  175,  175,  175,  175,  175,      175,  175,  175,  178,  178,  178,  372,  178,  178,  372,      178,  178,  178,  225,  225,  225,  225,  225,  225,  225,      225,  225,  225,  225,  228,  228,  228,  372,  228,  228,      372,  228,  228,  228,  237,  237,  237,  237,  372,  372,      372,  372,  372,  237,  274,  274,  274,  274,  372,  372,      372,  372,  372,  274,  279,  279,  279,  279,  279,  279,      279,  279,  279,  279,  279,  282,  282,  282,  372,  282,      282,  372,  372,  282,  282,  310,  310,  310,  310,  310,      310,  310,  310,  310,  310,  310,  313,  313,  313,  372,      313,  313,  372,  372,  313,  313,    9,  372,  372,  372,      372,  372,  372,  372,  372,  372,  372,  372,  372,  372,      372,  372,  372,  372,  372,  372,  372,  372,  372,  372,      372,  372,  372,  372,  372,  372,  372,  372,  372,  372,      372,  372,  372,  372,  372,  372,  372,  372    } ;static yyconst short int yy_chk[1179] =    {   0,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    3,    4,    7,    5,    6,   13,    7,   13,    3,        4,    5,    6,    8,   11,   11,   11,    8,   12,   12,       12,   14,  367,   22,   22,   22,  363,  362,   14,   22,       23,   23,   23,   22,   26,   25,   23,   29,   26,  361,       23,   25,  354,   35,   25,   28,  353,  351,   26,   25,      349,   27,   26,   25,   28,   29,   28,   23,   24,   24,       24,   35,   63,   28,   24,   27,   30,   30,   24,   68,      348,   27,   31,   27,   30,  345,   32,   33,   30,   24,       63,   31,   27,   27,   30,   32,   33,   68,   34,   36,       31,   33,  340,   36,   32,   33,   66,   24,   34,   34,       66,   37,   36,   37,   38,   39,   34,   38,   64,   39,       64,   36,   39,   38,   66,  338,   37,   50,   50,   50,      337,   37,   38,   53,   53,   53,   53,   39,  336,   53,       55,   55,   55,   53,  335,  334,   55,   62,   62,   62,       55,  333,   55,   62,   67,   69,   67,   62,   65,   65,       65,   65,   70,   71,   69,   72,   72,   73,   72,   72,       70,   73,   67,   69,   71,   74,   76,   77,   77,   79,       70,   71,   74,   83,   80,   78,   72,   78,   76,   73,       81,   78,   79,   74,   76,   80,   77,   79,   82,   81,      326,   83,   80,   85,  318,   78,   84,   84,   81,   90,       87,   82,   91,   86,  317,   86,   82,   89,   84,   84,       98,   85,   86,   89,   84,   87,   92,   90,   87,   95,       91,   86,   88,   88,   88,   89,   93,   92,   98,   96,       93,   97,   99,   94,   92,   95,  114,   95,  114,  134,       96,   94,   97,   88,   93,   94,   94,   96,   94,   97,       99,   94,  100,  101,  102,  123,   88,  134,  102,  123,      135,   88,  100,  316,  101,  115,  115,  115,  115,  139,      100,  101,  102,  111,  111,  111,  111,  123,  135,  111,      113,  113,  113,  111,  124,  315,  113,  139,  124,  314,      113,  120,  120,  120,  120,  122,  122,  122,  125,  126,      128,  122,  124,  127,  130,  122,  310,  129,  130,  132,      125,  126,  126,  129,  128,  127,  125,  126,  128,  132,      131,  127,  131,  137,  133,  129,  130,  132,  133,  136,      138,  136,  138,  140,  141,  142,  137,  143,  131,  144,      140,  137,  133,  145,  142,  147,  146,  309,  144,  136,      138,  140,  141,  142,  149,  143,  146,  144,  149,  308,      306,  145,  150,  147,  146,  148,  148,  148,  150,  151,      153,  148,  149,  152,  152,  148,  155,  151,  156,  154,      150,  157,  153,  154,  158,  162,  159,  151,  153,  158,      155,  152,  156,  160,  155,  159,  156,  160,  148,  157,      161,  154,  163,  162,  159,  164,  165,  158,  161,  305,      163,  160,  165,  164,  170,  170,  170,  170,  161,  179,      163,  179,  181,  164,  165,  172,  172,  172,  294,  283,      183,  172,  279,  278,  181,  172,  176,  176,  176,  176,      181,  184,  176,  177,  177,  177,  176,  182,  183,  177,      178,  178,  178,  177,  184,  182,  178,  191,  186,  184,      178,  180,  180,  180,  180,  182,  185,  186,  188,  187,      185,  187,  188,  190,  189,  191,  186,  196,  192,  193,      193,  190,  192,  194,  185,  195,  197,  187,  189,  197,      188,  190,  189,  194,  198,  196,  192,  193,  199,  195,      200,  194,  201,  195,  197,  202,  203,  205,  206,  205,      207,  200,  198,  208,  209,  211,  199,  277,  200,  212,      201,  211,  208,  202,  203,  217,  206,  205,  207,  210,      212,  208,  209,  211,  213,  215,  210,  212,  214,  218,      214,  215,  216,  217,  216,  213,  219,  210,  220,  221,      219,  275,  213,  215,  229,  238,  229,  218,  214,  237,      237,  237,  216,  273,  219,  237,  220,  221,  226,  226,      226,  226,  239,  238,  226,  227,  227,  227,  226,  271,      270,  227,  228,  228,  228,  227,  240,  241,  228,  244,      239,  241,  228,  230,  230,  230,  230,  235,  235,  235,      235,  243,  242,  245,  240,  246,  247,  244,  249,  241,      242,  246,  243,  269,  245,  247,  248,  248,  250,  243,      242,  245,  251,  246,  247,  252,  249,  255,  253,  257,      258,  250,  268,  256,  248,  251,  250,  259,  267,  254,      251,  253,  261,  252,  256,  255,  253,  257,  258,  260,      259,  256,  262,  263,  261,  259,  264,  260,  265,  263,      261,  262,  266,  236,  234,  233,  265,  260,  232,  264,      262,  263,  286,  231,  264,  225,  265,  224,  223,  222,      266,  272,  272,  272,  272,  274,  274,  274,  284,  287,      286,  274,  280,  280,  280,  280,  284,  285,  280,  281,      281,  281,  282,  282,  282,  281,  284,  287,  282,  288,      290,  285,  289,  291,  292,  285,  293,  291,  295,  296,      297,  299,  288,  300,  289,  204,  296,  288,  290,  301,      289,  291,  292,  302,  293,  298,  295,  296,  297,  299,      298,  300,  303,  301,  304,  175,  304,  301,  174,  173,      171,  302,  169,  311,  311,  311,  311,  319,  298,  311,      303,  320,  304,  312,  312,  312,  313,  313,  313,  312,      319,  321,  313,  322,  323,  319,  324,  325,  327,  320,      329,  328,  331,  168,  341,  324,  342,  323,  167,  321,      328,  322,  323,  330,  324,  325,  327,  344,  329,  328,      331,  330,  341,  343,  342,  344,  346,  343,  356,  347,      346,  330,  355,  359,  355,  344,  358,  358,  365,  366,      370,  343,  347,  166,  346,  121,  356,  347,  119,  118,      365,  359,  355,  116,  112,  358,  365,  366,  370,  373,      373,  373,  373,  373,  373,  373,  373,  373,  373,  373,      374,  374,  374,  374,  374,  374,  374,  374,  374,  374,      374,  375,  375,  375,  375,  375,  375,  375,  375,  375,      375,  375,  376,  376,  376,  376,  376,  376,  376,  376,      376,  376,  376,  377,  110,  103,   60,  377,  377,  378,      378,  378,   56,  378,  378,   52,  378,  378,  378,  379,      379,  379,  379,  379,  379,  379,   51,  379,  379,  379,      380,  380,   49,  380,  380,  380,  380,  380,  380,  380,      380,  381,  381,  381,  381,  381,   46,  381,  381,  381,      381,  381,  382,   42,   40,   20,   19,  382,  383,  383,      383,  383,  383,  383,  383,  383,  383,  383,  383,  384,       18,   17,   16,  384,  384,  385,  385,    9,    2,  385,      385,  385,  385,  385,  385,  385,  386,  386,  386,  386,        0,    0,    0,    0,    0,  386,  387,    0,    0,    0,      387,  387,  388,  388,  388,  388,    0,    0,    0,    0,        0,  388,  389,  389,  389,  389,  389,  389,  389,  389,      389,  389,  389,  390,  390,  390,    0,  390,  390,    0,      390,  390,  390,  391,  391,  391,  391,  391,  391,  391,      391,  391,  391,  391,  392,  392,  392,    0,  392,  392,        0,  392,  392,  392,  393,  393,  393,  393,    0,    0,        0,    0,    0,  393,  394,  394,  394,  394,    0,    0,        0,    0,    0,  394,  395,  395,  395,  395,  395,  395,      395,  395,  395,  395,  395,  396,  396,  396,    0,  396,      396,    0,    0,  396,  396,  397,  397,  397,  397,  397,      397,  397,  397,  397,  397,  397,  398,  398,  398,    0,      398,  398,    0,    0,  398,  398,  372,  372,  372,  372,      372,  372,  372,  372,  372,  372,  372,  372,  372,  372,      372,  372,  372,  372,  372,  372,  372,  372,  372,  372,      372,  372,  372,  372,  372,  372,  372,  372,  372,  372,      372,  372,  372,  372,  372,  372,  372,  372    } ;static yy_state_type yy_last_accepting_state;static char *yy_last_accepting_cpos;/* The intent behind this definition is that it'll catch * any uses of REJECT which flex missed. */#define REJECT reject_used_but_not_detected#define yymore() yymore_used_but_not_detected#define YY_MORE_ADJ 0#define YY_RESTORE_YY_MORE_OFFSETchar *yytext;#line 1 "scan.l"#define INITIAL 0#line 2 "scan.l"/*------------------------------------------------------------------------- * * scan.l		- Scanner for the PL/pgSQL *			  procedural language * * Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * * IDENTIFICATION *	  $PostgreSQL: pgsql/src/pl/plpgsql/src/scan.l,v 1.60 2008/01/01 19:46:00 momjian Exp $ * *------------------------------------------------------------------------- */#include "plpgsql.h"#include "mb/pg_wchar.h"/* No reason to constrain amount of data slurped */#define YY_READ_BUF_SIZE 16777216/* Avoid exit() on fatal scanner errors (a bit ugly -- see yy_fatal_error) */#undef fprintf#define fprintf(file, fmt, msg)  ereport(ERROR, (errmsg_internal("%s", msg)))/* Handles to the buffer that the lexer uses internally */static YY_BUFFER_STATE scanbufhandle;static char *scanbuf;static const char *scanstr;		/* original input string */static int	scanner_functype;static bool	scanner_typereported;static int	pushback_token;static bool have_pushback_token;static const char *cur_line_start;static int	cur_line_num;static char    *dolqstart;      /* current $foo$ quote start string */static int	dolqlen;			/* signal to plpgsql_get_string_value */bool plpgsql_SpaceScanned = false;#define YY_NEVER_INTERACTIVE 1#define YY_NO_UNPUT 1#define IN_STRING 1#define IN_COMMENT 2#define IN_DOLLARQUOTE 3/* $foo$ style quotes ("dollar quoting") * copied straight from the backend SQL parser */#line 825 "pl_scan.c"/* Macros after this point can all be overridden by user definitions in * section 1. */#ifndef YY_SKIP_YYWRAP#ifdef __cplusplusextern "C" int yywrap YY_PROTO(( void ));#elseextern int yywrap YY_PROTO(( void ));#endif#endif#ifndef YY_NO_UNPUTstatic void yyunput YY_PROTO(( int c, char *buf_ptr ));#endif#ifndef yytext_ptrstatic void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));#endif#ifdef YY_NEED_STRLENstatic int yy_flex_strlen YY_PROTO(( yyconst char * ));#endif#ifndef YY_NO_INPUT#ifdef __cplusplusstatic int yyinput YY_PROTO(( void ));#elsestatic int input YY_PROTO(( void ));#endif#endif#if YY_STACK_USEDstatic int yy_start_stack_ptr = 0;static int yy_start_stack_depth = 0;static int *yy_start_stack = 0;#ifndef YY_NO_PUSH_STATEstatic void yy_push_state YY_PROTO(( int new_state ));#endif#ifndef YY_NO_POP_STATEstatic void yy_pop_state YY_PROTO(( void ));#endif#ifndef YY_NO_TOP_STATEstatic int yy_top_state YY_PROTO(( void ));#endif#else#define YY_NO_PUSH_STATE 1#define YY_NO_POP_STATE 1#define YY_NO_TOP_STATE 1#endif#ifdef YY_MALLOC_DECLYY_MALLOC_DECL#else#if __STDC__#ifndef __cplusplus#include <stdlib.h>#endif#else/* Just try to get by without declaring the routines.  This will fail * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int) * or sizeof(void*) != sizeof(int). */#endif

⌨️ 快捷键说明

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