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 + -
显示快捷键?