📄 pgc.c
字号:
398, 421, 0, 267, 1138, 641, 633, 288, 661, 420, 657, 684, 687, 1138, 545, 696, 699, 1138, 708, 711, 1138, 1138, 254, 600, 651, 720, 723, 714, 732, 417, 738, 399, 365, 0, 417, 742, 745, 748, 751, 760, 1138, 766, 373, 373, 769, 772, 775, 784, 366, 341, 335, 306, 0, 279, 787, 1138, 408, 273, 256, 250, 248, 214, 198, 177, 164, 164, 138, 1138, 82, 1138, 1138, 819, 832, 845, 858, 871, 884, 897, 910, 923, 936, 939, 947, 955, 967, 970, 982, 995, 1004, 1013, 1026, 1039, 1052, 1064, 1077, 1090, 1103, 1108, 1120, 2, 1125 } ;static yyconst short int yy_def[302] = { 0, 272, 272, 271, 3, 271, 5, 273, 273, 274, 274, 272, 11, 275, 275, 276, 276, 277, 277, 278, 278, 279, 279, 272, 272, 280, 280, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 281, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 282, 282, 271, 271, 271, 271, 271, 271, 271, 283, 271, 283, 62, 271, 271, 62, 271, 62, 48, 271, 284, 284, 72, 285, 271, 285, 285, 285, 285, 285, 285, 285, 271, 271, 271, 271, 271, 271, 271, 271, 286, 287, 271, 288, 288, 289, 95, 290, 271, 291, 271, 291, 292, 271, 271, 271, 293, 271, 294, 271, 271, 271, 295, 271, 271, 281, 281, 271, 281, 271, 48, 271, 296, 271, 271, 271, 271, 282, 282, 283, 283, 271, 131, 271, 131, 271, 297, 295, 297, 283, 298, 271, 271, 72, 271, 271, 285, 285, 285, 285, 299, 285, 286, 287, 271, 271, 288, 95, 289, 289, 289, 290, 291, 291, 291, 292, 271, 271, 271, 293, 271, 271, 271, 271, 271, 271, 295, 295, 178, 271, 281, 271, 296, 271, 271, 271, 271, 271, 282, 271, 271, 271, 271, 297, 271, 139, 139, 297, 138, 138, 138, 271, 300, 298, 271, 285, 285, 299, 299, 209, 285, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 295, 178, 271, 271, 271, 271, 282, 297, 138, 295, 301, 285, 299, 209, 295, 295, 271, 271, 271, 271, 282, 301, 299, 299, 271, 271, 271, 282, 271, 271, 282, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 0, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271 } ;static yyconst short int yy_nxt[1181] = { 0, 271, 115, 115, 115, 271, 29, 116, 271, 271, 29, 155, 156, 155, 233, 271, 30, 31, 32, 33, 30, 31, 32, 33, 34, 35, 36, 35, 34, 37, 38, 34, 39, 34, 40, 41, 42, 43, 44, 45, 46, 47, 48, 34, 49, 34, 50, 34, 51, 51, 51, 51, 52, 51, 51, 51, 51, 51, 51, 51, 51, 53, 34, 54, 55, 56, 57, 58, 59, 58, 60, 61, 60, 62, 63, 64, 65, 65, 63, 63, 65, 66, 67, 68, 69, 70, 65, 63, 63, 63, 71, 72, 71, 71, 71, 71, 71, 71, 71, 71, 71, 71, 73, 65, 57, 65, 57, 57, 75, 75, 76, 270, 77, 101, 110, 114, 111, 111, 101, 105, 105, 105, 78, 79, 80, 81, 108, 82, 75, 75, 76, 108, 77, 106, 120, 118, 121, 202, 203, 105, 105, 105, 78, 79, 80, 81, 102, 82, 84, 84, 84, 102, 29, 106, 113, 109, 115, 115, 115, 123, 109, 116, 85, 86, 87, 88, 269, 89, 84, 84, 84, 119, 29, 135, 165, 159, 271, 132, 132, 132, 161, 159, 85, 86, 87, 88, 161, 89, 90, 90, 90, 133, 29, 268, 134, 132, 132, 132, 137, 120, 267, 121, 30, 31, 32, 33, 148, 164, 149, 136, 266, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 95, 165, 95, 95, 95, 152, 265, 149, 96, 95, 110, 95, 111, 97, 114, 95, 111, 95, 95, 95, 95, 264, 95, 95, 95, 167, 168, 167, 96, 95, 114, 95, 111, 97, 164, 95, 118, 95, 95, 95, 124, 124, 124, 223, 132, 132, 132, 138, 237, 118, 135, 263, 139, 271, 125, 126, 262, 121, 136, 202, 203, 122, 142, 142, 142, 261, 177, 127, 132, 132, 132, 130, 119, 130, 130, 130, 143, 235, 260, 130, 130, 191, 135, 192, 130, 119, 140, 256, 130, 130, 130, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 141, 142, 142, 142, 169, 169, 169, 131, 190, 145, 190, 255, 115, 115, 115, 143, 158, 116, 158, 158, 158, 181, 182, 181, 159, 158, 191, 158, 191, 158, 193, 158, 193, 158, 158, 158, 171, 172, 171, 175, 175, 175, 254, 187, 173, 187, 253, 152, 188, 149, 175, 175, 175, 176, 202, 203, 112, 178, 119, 178, 178, 178, 202, 203, 176, 179, 178, 180, 178, 230, 178, 230, 178, 252, 178, 178, 178, 175, 175, 175, 250, 124, 124, 124, 185, 223, 185, 185, 232, 185, 232, 176, 177, 195, 122, 125, 175, 175, 175, 185, 132, 132, 132, 235, 127, 142, 142, 142, 245, 258, 176, 236, 259, 186, 136, 155, 156, 155, 203, 143, 215, 215, 215, 127, 195, 231, 196, 195, 196, 196, 196, 159, 195, 134, 196, 196, 229, 197, 198, 196, 198, 196, 188, 196, 196, 196, 199, 184, 199, 199, 199, 167, 168, 167, 200, 199, 224, 201, 223, 199, 164, 199, 164, 199, 199, 199, 195, 159, 196, 150, 196, 196, 196, 169, 169, 169, 196, 196, 271, 197, 131, 196, 134, 196, 131, 196, 196, 196, 205, 189, 205, 205, 184, 205, 175, 175, 206, 122, 118, 175, 175, 206, 112, 205, 171, 172, 171, 164, 207, 113, 112, 150, 177, 207, 151, 209, 211, 209, 209, 209, 215, 215, 215, 210, 209, 150, 209, 146, 209, 131, 209, 129, 209, 209, 209, 212, 213, 212, 216, 217, 216, 122, 113, 214, 112, 271, 218, 219, 220, 219, 175, 175, 175, 104, 222, 221, 222, 222, 104, 222, 181, 182, 181, 99, 176, 225, 182, 225, 99, 222, 178, 93, 178, 178, 178, 238, 239, 238, 179, 178, 93, 178, 271, 178, 271, 178, 271, 178, 178, 178, 175, 175, 175, 271, 175, 175, 175, 119, 227, 227, 227, 271, 226, 271, 176, 271, 271, 180, 176, 271, 271, 186, 228, 271, 271, 188, 175, 175, 206, 271, 234, 127, 234, 234, 271, 234, 225, 240, 225, 271, 207, 271, 175, 175, 206, 234, 177, 271, 271, 209, 271, 209, 209, 209, 271, 271, 207, 210, 209, 211, 209, 271, 209, 271, 209, 271, 209, 209, 209, 212, 213, 212, 212, 213, 212, 271, 271, 214, 271, 271, 214, 216, 217, 216, 216, 217, 216, 271, 271, 218, 271, 271, 218, 219, 220, 219, 219, 220, 219, 271, 271, 221, 271, 271, 221, 225, 240, 225, 227, 227, 227, 241, 271, 241, 241, 271, 241, 242, 242, 242, 271, 271, 228, 238, 239, 238, 241, 238, 239, 246, 238, 239, 238, 238, 239, 238, 247, 239, 247, 271, 271, 223, 271, 271, 223, 225, 182, 225, 271, 271, 243, 248, 248, 248, 238, 239, 246, 238, 239, 246, 247, 239, 247, 271, 271, 235, 271, 271, 235, 248, 248, 248, 257, 257, 257, 271, 271, 271, 271, 271, 271, 271, 226, 271, 249, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 251, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 83, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 98, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 128, 128, 130, 271, 271, 130, 130, 144, 144, 144, 271, 271, 271, 271, 144, 271, 144, 144, 147, 271, 271, 147, 147, 147, 147, 147, 147, 147, 147, 147, 147, 153, 153, 154, 154, 154, 154, 154, 154, 271, 154, 154, 154, 154, 154, 154, 157, 157, 157, 157, 157, 157, 157, 271, 157, 157, 157, 157, 157, 160, 271, 271, 160, 160, 162, 162, 162, 162, 162, 271, 162, 162, 162, 162, 162, 162, 162, 163, 163, 163, 163, 163, 271, 163, 163, 163, 163, 163, 163, 163, 166, 166, 166, 166, 166, 166, 271, 166, 166, 166, 166, 166, 166, 170, 170, 170, 170, 170, 170, 271, 170, 170, 170, 170, 170, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 177, 177, 271, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 204, 204, 204, 204, 208, 208, 271, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 244, 244, 244, 244, 27, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271 } ;static yyconst short int yy_chk[1181] = { 0, 0, 35, 35, 35, 0, 1, 35, 0, 0, 2, 93, 93, 93, 300, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 7, 7, 7, 269, 7, 19, 30, 33, 30, 33, 20, 23, 23, 23, 7, 7, 7, 7, 25, 7, 8, 8, 8, 26, 8, 23, 45, 38, 45, 141, 141, 24, 24, 24, 8, 8, 8, 8, 19, 8, 9, 9, 9, 20, 9, 24, 47, 25, 36, 36, 36, 47, 26, 36, 9, 9, 9, 9, 267, 9, 10, 10, 10, 38, 10, 63, 102, 96, 63, 62, 62, 62, 96, 159, 10, 10, 10, 10, 159, 10, 11, 11, 11, 62, 11, 266, 62, 65, 65, 65, 66, 66, 265, 66, 11, 11, 11, 11, 78, 102, 78, 65, 264, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 15, 164, 15, 15, 15, 81, 263, 81, 15, 15, 85, 15, 85, 15, 88, 15, 88, 15, 15, 15, 16, 262, 16, 16, 16, 104, 104, 104, 16, 16, 111, 16, 111, 16, 164, 16, 116, 16, 16, 16, 48, 48, 48, 223, 67, 67, 67, 68, 223, 117, 68, 261, 68, 68, 48, 48, 260, 48, 67, 204, 204, 67, 71, 71, 71, 259, 208, 48, 70, 70, 70, 70, 116, 70, 70, 70, 71, 208, 258, 70, 70, 133, 70, 133, 70, 117, 70, 254, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 72, 72, 72, 105, 105, 105, 131, 131, 72, 131, 252, 115, 115, 115, 72, 95, 115, 95, 95, 95, 119, 119, 119, 95, 95, 135, 95, 135, 95, 136, 95, 136, 95, 95, 95, 108, 108, 108, 112, 112, 112, 251, 127, 108, 127, 250, 149, 127, 149, 114, 114, 114, 112, 233, 233, 112, 113, 119, 113, 113, 113, 244, 244, 114, 113, 113, 114, 113, 197, 113, 197, 113, 249, 113, 113, 113, 122, 122, 122, 243, 124, 124, 124, 125, 232, 125, 125, 201, 125, 201, 122, 235, 230, 122, 124, 126, 126, 126, 125, 132, 132, 132, 235, 122, 142, 142, 142, 235, 257, 126, 210, 257, 126, 132, 155, 155, 155, 202, 142, 161, 161, 161, 126, 137, 200, 137, 198, 137, 137, 137, 161, 194, 192, 137, 137, 189, 137, 137, 137, 137, 137, 187, 137, 137, 137, 138, 183, 138, 138, 138, 167, 167, 167, 138, 138, 179, 138, 177, 138, 165, 138, 163, 138, 138, 138, 139, 160, 139, 148, 139, 139, 139, 169, 169, 169, 139, 139, 144, 139, 140, 139, 134, 139, 130, 139, 139, 139, 143, 129, 143, 143, 123, 143, 150, 150, 150, 120, 118, 152, 152, 152, 110, 143, 171, 171, 171, 100, 150, 87, 86, 150, 151, 152, 80, 151, 152, 151, 151, 151, 215, 215, 215, 151, 151, 79, 151, 73, 151, 60, 151, 52, 151, 151, 151, 156, 156, 156, 168, 168, 168, 46, 32, 156, 31, 27, 168, 172, 172, 172, 175, 175, 175, 22, 176, 172, 176, 176, 21, 176, 181, 181, 181, 18, 175, 182, 182, 182, 17, 176, 178, 14, 178, 178, 178, 224, 224, 224, 178, 178, 13, 178, 0, 178, 0, 178, 0, 178, 178, 178, 180, 180, 180, 0, 186, 186, 186, 181, 188, 188, 188, 0, 182, 0, 180, 0, 0, 180, 186, 0, 0, 186, 188, 0, 0, 188, 206, 206, 206, 0, 207, 186, 207, 207, 0, 207, 225, 225, 225, 0, 206, 0, 211, 211, 211, 207, 209, 0, 0, 209, 0, 209, 209, 209, 0, 0, 211, 209, 209, 211, 209, 0, 209, 0, 209, 0, 209, 209, 209, 212, 212, 212, 213, 213, 213, 0, 0, 212, 0, 0, 213, 216, 216, 216, 217, 217, 217, 0, 0, 216, 0, 0, 217, 219, 219, 219, 220, 220, 220, 0, 0, 219, 0, 0, 220, 226, 226, 226, 227, 227, 227, 228, 0, 228, 228, 0, 228, 229, 229, 229, 0, 0, 227, 231, 231, 231, 228, 236, 236, 236, 237, 237, 237, 238, 238, 238, 239, 239, 239, 0, 0, 237, 0, 0, 238, 240, 240, 240, 0, 0, 229, 242, 242, 242, 245, 245, 245, 246, 246, 246, 247, 247, 247, 0, 0, 245, 0, 0, 246, 248, 248, 248, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 240, 0, 242, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 248, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 276, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 279, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 280, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, 282, 282, 283, 0, 0, 283, 283, 284, 284, 284, 0, 0, 0, 0, 284, 0, 284, 284, 285, 0, 0, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 286, 286, 287, 287, 287, 287, 287, 287, 0, 287, 287, 287, 287, 287, 287, 288, 288, 288, 288, 288, 288, 288, 0, 288, 288, 288, 288, 288, 289, 0, 0, 289, 289, 290, 290, 290, 290, 290, 0, 290, 290, 290, 290, 290, 290, 290, 291, 291, 291, 291, 291, 0, 291, 291, 291, 291, 291, 291, 291, 292, 292, 292, 292, 292, 292, 0, 292, 292, 292, 292, 292, 292, 293, 293, 293, 293, 293, 293, 0, 293, 293, 293, 293, 293, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 295, 295, 0, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 298, 298, 298, 298, 299, 299, 0, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 301, 301, 301, 301, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, 271 } ;static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;static char *yy_full_match;static int yy_lp;static int yy_looking_for_trail_begin = 0;static int yy_full_lp;static int *yy_full_state;#define YY_TRAILING_MASK 0x2000#define YY_TRAILING_HEAD_MASK 0x4000#define REJECT \{ \*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ \yy_cp = yy_full_match; /* restore poss. backed-over text */ \yy_lp = yy_full_lp; /* restore orig. accepting pos. */ \yy_state_ptr = yy_full_state; /* restore orig. state */ \yy_current_state = *yy_state_ptr; /* restore curr. state */ \++yy_lp; \goto find_rule; \}#define yymore() yymore_used_but_not_detected#define YY_MORE_ADJ 0#define YY_RESTORE_YY_MORE_OFFSETchar *yytext;#line 1 "pgc.l"#define INITIAL 0/* This is a modified version of src/backend/parser/scan.l */#line 3 "pgc.l"#include "config.h"#include <ctype.h>#include <sys/types.h>#include <limits.h>#ifndef PATH_MAX#include <sys/param.h>#define PATH_MAX MAXPATHLEN#endif#if defined(HAVE_STRING_H)#include <string.h>#else#include <strings.h>#endif#include <errno.h>#include "postgres.h"#include "miscadmin.h"#include "nodes/pg_list.h"#include "nodes/parsenodes.h"#include "parser/gramparse.h"#include "parser/scansup.h"#include "extern.h"#include "preproc.h"#include "utils/builtins.h"#ifdef YY_READ_BUF_SIZE#undef YY_READ_BUF_SIZE#endif#define YY_READ_BUF_SIZE MAX_PARSE_BUFFER/* some versions of lex define this as a macro */#if defined(yywrap)#undef yywrap#endif /* yywrap */extern YYSTYPE yylval;int llen;char literal[MAX_PARSE_BUFFER];int before_comment;struct _yy_buffer { YY_BUFFER_STATE buffer; long lineno; char * filename; struct _yy_buffer * next; } *yy_buffer = NULL;struct _defines *defines = NULL;static char *old;#define C 1#define SQL 2#define incl 3#define def 4#define def_ident 5/* OK, here is a short description of lex/flex rules behavior. * The longest pattern which matches an input string is always chosen. * For equal-length patterns, the first occurring in the rules list is chosen. * INITIAL is the starting condition, to which all non-conditional rules apply. * When in an exclusive condition, only those rules defined for that condition apply. * * Exclusive states change parsing rules while the state is active. * There are exclusive states for quoted strings, extended comments, * and to eliminate parsing troubles for numeric strings. * Exclusive states: * <xb> binary numeric string - thomas 1997-11-16 * <xc> extended C-style comments - tgl 1997-07-12 * <xd> delimited identifiers (double-quoted identifiers) - tgl 1997-10-27 * <xh> hexadecimal numeric string - thomas 1997-11-16 * <xm> numeric strings with embedded minus sign - tgl 1997-09-05 * <xq> quoted strings - tgl 1997-07-30 * * The "extended comment" syntax closely resembles allowable operator syntax. * So, when in condition <xc>, only strings which would terminate the * "extended comment" trigger any action other than "ignore". * Be sure to match _any_ candidate comment, including those with appended * operator-like symbols. - thomas 1997-07-14 */#define xb 6#define xc 7#define xd 8
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -