51 #define YYBISON_VERSION "3.4" 54 #define YYSKELETON_NAME "yacc.c" 67 #define yyparse wkt_yyparse 68 #define yylex wkt_yylex 69 #define yyerror wkt_yyerror 70 #define yydebug wkt_yydebug 71 #define yynerrs wkt_yynerrs 73 #define yylval wkt_yylval 74 #define yychar wkt_yychar 75 #define yylloc wkt_yylloc 78 #line 1 "lwin_wkt_parse.y" 111 if ( ! global_parser_result.
message )
142 global_parser_result.
wkinput = wktstr;
147 LWDEBUGF(4,
"wkt_yyparse returned %d", parse_rv);
151 if ( parse_rv || global_parser_result.
errcode )
153 if( ! global_parser_result.
errcode )
159 else if (global_parser_result.
geom)
162 global_parser_result.
geom = NULL;
165 LWDEBUGF(5,
"error returned by wkt_yyparse() @ %d: [%d] '%s'",
182 #define WKT_ERROR() { if ( global_parser_result.errcode != 0 ) { YYERROR; } } 186 #line 187 "lwin_wkt_parse.c" 189 # if defined __cplusplus 190 # if 201103L <= __cplusplus 191 # define YY_NULLPTR nullptr 193 # define YY_NULLPTR 0 196 # define YY_NULLPTR ((void*)0) 201 #ifdef YYERROR_VERBOSE 202 # undef YYERROR_VERBOSE 203 # define YYERROR_VERBOSE 1 205 # define YYERROR_VERBOSE 1 210 #ifndef YY_WKT_YY_LWIN_WKT_PARSE_H_INCLUDED 211 # define YY_WKT_YY_LWIN_WKT_PARSE_H_INCLUDED 251 #define POINT_TOK 258 252 #define LINESTRING_TOK 259 253 #define POLYGON_TOK 260 254 #define MPOINT_TOK 261 255 #define MLINESTRING_TOK 262 256 #define MPOLYGON_TOK 263 257 #define MSURFACE_TOK 264 258 #define MCURVE_TOK 265 259 #define CURVEPOLYGON_TOK 266 260 #define COMPOUNDCURVE_TOK 267 261 #define CIRCULARSTRING_TOK 268 262 #define COLLECTION_TOK 269 263 #define RBRACKET_TOK 270 264 #define LBRACKET_TOK 271 265 #define COMMA_TOK 272 266 #define EMPTY_TOK 273 267 #define SEMICOLON_TOK 274 268 #define TRIANGLE_TOK 275 270 #define POLYHEDRALSURFACE_TOK 277 271 #define DOUBLE_TOK 278 272 #define DIMENSIONALITY_TOK 279 276 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 279 #line 113 "lwin_wkt_parse.y" 288 #line 289 "lwin_wkt_parse.c" 292 # define YYSTYPE_IS_TRIVIAL 1 293 # define YYSTYPE_IS_DECLARED 1 297 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED 298 typedef struct YYLTYPE YYLTYPE;
306 # define YYLTYPE_IS_DECLARED 1 307 # define YYLTYPE_IS_TRIVIAL 1 348 # ifdef __SIZE_TYPE__ 349 # define YYSIZE_T __SIZE_TYPE__ 350 # elif defined size_t 351 # define YYSIZE_T size_t 352 # elif ! defined YYSIZE_T 354 # define YYSIZE_T size_t 356 # define YYSIZE_T unsigned 360 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) 363 # if defined YYENABLE_NLS && YYENABLE_NLS 365 # include <libintl.h> 366 # define YY_(Msgid) dgettext ("bison-runtime", Msgid) 370 # define YY_(Msgid) Msgid 375 # if (defined __GNUC__ \ 376 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \ 377 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C 378 # define YY_ATTRIBUTE(Spec) __attribute__(Spec) 380 # define YY_ATTRIBUTE(Spec) 384 #ifndef YY_ATTRIBUTE_PURE 385 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__)) 388 #ifndef YY_ATTRIBUTE_UNUSED 389 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__)) 393 #if ! defined lint || defined __GNUC__ 394 # define YYUSE(E) ((void) (E)) 399 #if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ 401 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ 402 _Pragma ("GCC diagnostic push") \ 403 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ 404 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") 405 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \ 406 _Pragma ("GCC diagnostic pop") 408 # define YY_INITIAL_VALUE(Value) Value 410 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 411 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN 412 # define YY_IGNORE_MAYBE_UNINITIALIZED_END 414 #ifndef YY_INITIAL_VALUE 415 # define YY_INITIAL_VALUE(Value) 419 #define YY_ASSERT(E) ((void) (0 && (E))) 421 #if ! defined yyoverflow || YYERROR_VERBOSE 425 # ifdef YYSTACK_USE_ALLOCA 426 # if YYSTACK_USE_ALLOCA 428 # define YYSTACK_ALLOC __builtin_alloca 429 # elif defined __BUILTIN_VA_ARG_INCR 432 # define YYSTACK_ALLOC __alloca 433 # elif defined _MSC_VER 435 # define alloca _alloca 437 # define YYSTACK_ALLOC alloca 438 # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS 441 # ifndef EXIT_SUCCESS 442 # define EXIT_SUCCESS 0 449 # ifdef YYSTACK_ALLOC 451 # define YYSTACK_FREE(Ptr) do { ; } while (0) 452 # ifndef YYSTACK_ALLOC_MAXIMUM 457 # define YYSTACK_ALLOC_MAXIMUM 4032 460 # define YYSTACK_ALLOC YYMALLOC 461 # define YYSTACK_FREE YYFREE 462 # ifndef YYSTACK_ALLOC_MAXIMUM 463 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM 465 # if (defined __cplusplus && ! defined EXIT_SUCCESS \ 466 && ! ((defined YYMALLOC || defined malloc) \ 467 && (defined YYFREE || defined free))) 469 # ifndef EXIT_SUCCESS 470 # define EXIT_SUCCESS 0 474 # define YYMALLOC malloc 475 # if ! defined malloc && ! defined EXIT_SUCCESS 481 # if ! defined free && ! defined EXIT_SUCCESS 489 #if (! defined yyoverflow \ 490 && (! defined __cplusplus \ 491 || (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \ 492 && defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) 503 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) 507 # define YYSTACK_BYTES(N) \ 508 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \ 509 + 2 * YYSTACK_GAP_MAXIMUM) 511 # define YYCOPY_NEEDED 1 518 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \ 521 YYSIZE_T yynewbytes; \ 522 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ 523 Stack = &yyptr->Stack_alloc; \ 524 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 525 yyptr += yynewbytes / sizeof (*yyptr); \ 531 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED 535 # if defined __GNUC__ && 1 < __GNUC__ 536 # define YYCOPY(Dst, Src, Count) \ 537 __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) 539 # define YYCOPY(Dst, Src, Count) \ 543 for (yyi = 0; yyi < (Count); yyi++) \ 544 (Dst)[yyi] = (Src)[yyi]; \ 563 #define YYNSTATES 264 566 #define YYMAXUTOK 280 570 #define YYTRANSLATE(YYX) \ 571 ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 577 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
578 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
579 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
580 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
581 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
582 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
583 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
584 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
585 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
586 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
587 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
588 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
589 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
590 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
591 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
592 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
593 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
594 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
595 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
596 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
597 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
598 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
599 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
600 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
601 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
602 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
603 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
604 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
612 0, 217, 217, 219, 223, 224, 225, 226, 227, 228,
613 229, 230, 231, 232, 233, 234, 235, 236, 237, 240,
614 242, 244, 246, 250, 252, 256, 258, 260, 262, 266,
615 268, 270, 272, 274, 276, 280, 282, 284, 286, 290,
616 292, 294, 296, 300, 302, 304, 306, 310, 312, 316,
617 318, 322, 324, 326, 328, 332, 334, 338, 341, 343,
618 345, 347, 351, 353, 357, 358, 359, 360, 363, 365,
619 369, 371, 375, 378, 381, 383, 385, 387, 391, 393,
620 395, 397, 399, 401, 405, 407, 409, 411, 415, 417,
621 419, 421, 423, 425, 427, 429, 433, 435, 437, 439,
622 443, 445, 449, 451, 453, 455, 459, 461, 463, 465,
623 469, 471, 475, 477, 481, 483, 485, 487, 491, 495,
624 497, 499, 501, 505, 507, 511, 513, 515, 519, 521,
625 523, 525, 529, 531, 535, 537, 539
629 #if YYDEBUG || YYERROR_VERBOSE || 1 634 "$end",
"error",
"$undefined",
"POINT_TOK",
"LINESTRING_TOK",
635 "POLYGON_TOK",
"MPOINT_TOK",
"MLINESTRING_TOK",
"MPOLYGON_TOK",
636 "MSURFACE_TOK",
"MCURVE_TOK",
"CURVEPOLYGON_TOK",
"COMPOUNDCURVE_TOK",
637 "CIRCULARSTRING_TOK",
"COLLECTION_TOK",
"RBRACKET_TOK",
"LBRACKET_TOK",
638 "COMMA_TOK",
"EMPTY_TOK",
"SEMICOLON_TOK",
"TRIANGLE_TOK",
"TIN_TOK",
639 "POLYHEDRALSURFACE_TOK",
"DOUBLE_TOK",
"DIMENSIONALITY_TOK",
"SRID_TOK",
640 "$accept",
"geometry",
"geometry_no_srid",
"geometrycollection",
641 "geometry_list",
"multisurface",
"surface_list",
"tin",
642 "polyhedralsurface",
"multipolygon",
"polygon_list",
"patch_list",
643 "polygon",
"polygon_untagged",
"patch",
"curvepolygon",
"curvering_list",
644 "curvering",
"patchring_list",
"ring_list",
"patchring",
"ring",
645 "compoundcurve",
"compound_list",
"multicurve",
"curve_list",
646 "multilinestring",
"linestring_list",
"circularstring",
"linestring",
647 "linestring_untagged",
"triangle_list",
"triangle",
"triangle_untagged",
648 "multipoint",
"point_list",
"point_untagged",
"point",
"ptarray",
658 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
659 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
660 275, 276, 277, 278, 279, 280
664 #define YYPACT_NINF -90 666 #define yypact_value_is_default(Yystate) \ 667 (!!((Yystate) == (-90))) 669 #define YYTABLE_NINF -1 671 #define yytable_value_is_error(Yytable_value) \ 678 109, -2, 16, 23, 26, 36, 39, 40, 52, 53,
679 74, 79, 83, 84, 108, 137, 7, 46, -90, -90,
680 -90, -90, -90, -90, -90, -90, -90, -90, -90, -90,
681 -90, -90, -90, -90, 43, -90, 27, 43, -90, 88,
682 33, -90, 144, 140, -90, 167, 175, -90, 176, 179,
683 -90, 183, 20, -90, 184, 11, -90, 187, 11, -90,
684 188, 17, -90, 191, 43, -90, 192, 168, -90, 195,
685 51, -90, 196, 56, -90, 199, 70, -90, 200, 168,
686 -90, 68, 110, -90, 43, -90, 169, 43, -90, 43,
687 204, -90, 33, -90, 43, -90, 205, -90, -90, 140,
688 -90, 43, -90, 208, -90, 175, -90, 33, -90, 209,
689 -90, 179, -90, 212, -90, -90, -90, 20, -90, -90,
690 213, -90, -90, -90, 11, -90, 216, -90, -90, -90,
691 -90, -90, 11, -90, 217, -90, -90, -90, 17, -90,
692 220, 43, -90, -90, 221, 168, -90, 43, 80, -90,
693 93, 224, -90, 56, -90, 94, 225, -90, 70, -90,
694 -90, 105, -90, 43, 228, -90, 229, 232, -90, 33,
695 233, 44, -90, 140, 236, 237, -90, 175, 240, 241,
696 -90, 179, 244, -90, 20, 245, -90, 11, 248, -90,
697 11, 249, -90, 17, 252, -90, 253, -90, 168, 256,
698 257, 43, 43, -90, 56, 260, 43, 261, -90, -90,
699 70, 264, 112, -90, -90, -90, -90, -90, -90, -90,
700 -90, -90, -90, -90, -90, -90, -90, -90, -90, -90,
701 -90, -90, -90, -90, -90, -90, -90, -90, -90, -90,
702 -90, -90, -90, -90, -90, -90, 47, 265, 268, -90,
703 -90, 269, -90, 94, -90, -90, -90, -90, 131, 132,
712 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
713 0, 0, 0, 0, 0, 0, 0, 0, 2, 18,
714 13, 15, 16, 12, 8, 9, 7, 14, 11, 6,
715 5, 17, 10, 4, 0, 131, 0, 0, 109, 0,
716 0, 54, 0, 0, 122, 0, 0, 99, 0, 0,
717 46, 0, 0, 28, 0, 0, 87, 0, 0, 61,
718 0, 0, 77, 0, 0, 105, 0, 0, 22, 0,
719 0, 117, 0, 0, 38, 0, 0, 42, 0, 0,
720 1, 0, 0, 133, 0, 130, 0, 0, 108, 0,
721 0, 71, 0, 53, 0, 127, 0, 124, 125, 0,
722 121, 0, 111, 0, 101, 0, 98, 0, 56, 0,
723 48, 0, 45, 0, 32, 34, 33, 0, 27, 93,
724 0, 92, 94, 95, 0, 86, 0, 63, 66, 67,
725 65, 64, 0, 60, 0, 81, 82, 83, 0, 76,
726 0, 0, 104, 24, 0, 0, 21, 0, 0, 116,
727 0, 0, 113, 0, 37, 0, 0, 50, 0, 41,
728 3, 134, 128, 0, 0, 106, 0, 0, 51, 0,
729 0, 0, 119, 0, 0, 0, 96, 0, 0, 0,
730 43, 0, 0, 25, 0, 0, 84, 0, 0, 58,
731 0, 0, 74, 0, 0, 102, 0, 19, 0, 0,
732 0, 0, 0, 35, 0, 0, 0, 0, 69, 39,
733 0, 0, 135, 132, 129, 107, 73, 70, 52, 126,
734 123, 120, 110, 100, 97, 55, 47, 44, 29, 31,
735 30, 26, 89, 88, 90, 91, 85, 62, 59, 78,
736 79, 80, 75, 103, 23, 20, 0, 0, 0, 112,
737 36, 0, 57, 0, 49, 40, 136, 114, 0, 0,
744 -90, -90, 0, -90, 5, -90, 37, -90, -90, -90,
745 48, 6, -39, -33, -42, -32, 55, -21, -90, -89,
746 -57, 118, -50, 150, -90, 165, -90, 185, -51, -49,
747 -44, 138, -90, 89, -90, 193, 121, -90, -36, -6
753 -1, 17, 143, 19, 144, 20, 113, 21, 22, 23,
754 109, 156, 24, 110, 157, 25, 126, 127, 207, 90,
755 208, 91, 26, 134, 27, 120, 28, 103, 29, 30,
756 131, 151, 31, 152, 32, 96, 97, 33, 82, 83
764 18, 86, 104, 170, 121, 119, 122, 129, 128, 130,
765 135, 123, 136, 114, 34, 2, 35, 137, 179, 115,
766 116, 2, 36, 10, 11, 3, 79, 101, 140, 102,
767 11, 9, 37, 101, 38, 102, 107, 98, 108, 40,
768 39, 41, 43, 84, 44, 85, 80, 42, 164, 89,
769 45, 166, 46, 167, 47, 49, 52, 50, 53, 219,
770 48, 104, 257, 51, 54, 175, 81, 147, 55, 58,
771 56, 59, 150, 121, 119, 122, 57, 60, 114, 160,
772 123, 129, 128, 130, 115, 116, 155, 135, 171, 136,
773 61, 161, 62, 98, 137, 64, 201, 65, 63, 67,
774 70, 68, 71, 66, 87, 196, 88, 69, 72, 202,
775 206, 200, 1, 2, 3, 4, 5, 6, 7, 8,
776 9, 10, 11, 12, 73, 162, 74, 163, 212, 13,
777 14, 15, 75, 223, 16, 256, 233, 232, 234, 129,
778 128, 130, 239, 235, 240, 228, 262, 263, 226, 241,
779 199, 229, 230, 76, 185, 77, 94, 213, 95, 182,
780 92, 78, 93, 81, 211, 247, 248, 98, 254, 237,
781 251, 1, 2, 3, 4, 5, 6, 7, 8, 9,
782 10, 11, 12, 99, 165, 100, 163, 191, 13, 14,
783 15, 101, 105, 102, 106, 107, 261, 108, 244, 111,
784 117, 112, 118, 124, 132, 125, 133, 138, 141, 139,
785 142, 145, 148, 146, 149, 153, 158, 154, 159, 168,
786 172, 169, 173, 176, 180, 177, 181, 183, 186, 184,
787 187, 189, 192, 190, 193, 195, 197, 163, 198, 203,
788 209, 204, 210, 214, 215, 163, 163, 216, 218, 163,
789 169, 221, 222, 173, 163, 224, 225, 177, 169, 227,
790 231, 181, 184, 236, 238, 187, 190, 242, 243, 193,
791 163, 245, 246, 198, 163, 250, 252, 204, 253, 255,
792 258, 210, 163, 259, 260, 163, 163, 217, 194, 188,
793 178, 205, 174, 249, 220
798 0, 37, 46, 92, 55, 55, 55, 58, 58, 58,
799 61, 55, 61, 52, 16, 4, 18, 61, 107, 52,
800 52, 4, 24, 12, 13, 5, 19, 16, 64, 18,
801 13, 11, 16, 16, 18, 18, 16, 43, 18, 16,
802 24, 18, 16, 16, 18, 18, 0, 24, 84, 16,
803 24, 87, 16, 89, 18, 16, 16, 18, 18, 15,
804 24, 105, 15, 24, 24, 101, 23, 16, 16, 16,
805 18, 18, 16, 124, 124, 124, 24, 24, 117, 79,
806 124, 132, 132, 132, 117, 117, 16, 138, 94, 138,
807 16, 23, 18, 99, 138, 16, 16, 18, 24, 16,
808 16, 18, 18, 24, 16, 141, 18, 24, 24, 16,
809 16, 147, 3, 4, 5, 6, 7, 8, 9, 10,
810 11, 12, 13, 14, 16, 15, 18, 17, 23, 20,
811 21, 22, 24, 177, 25, 23, 187, 187, 187, 190,
812 190, 190, 193, 187, 193, 184, 15, 15, 181, 193,
813 145, 184, 184, 16, 117, 18, 16, 163, 18, 111,
814 16, 24, 18, 23, 158, 201, 202, 173, 210, 190,
815 206, 3, 4, 5, 6, 7, 8, 9, 10, 11,
816 12, 13, 14, 16, 15, 18, 17, 132, 20, 21,
817 22, 16, 16, 18, 18, 16, 253, 18, 198, 16,
818 16, 18, 18, 16, 16, 18, 18, 16, 16, 18,
819 18, 16, 16, 18, 18, 16, 16, 18, 18, 15,
820 15, 17, 17, 15, 15, 17, 17, 15, 15, 17,
821 17, 15, 15, 17, 17, 15, 15, 17, 17, 15,
822 15, 17, 17, 15, 15, 17, 17, 15, 15, 17,
823 17, 15, 15, 17, 17, 15, 15, 17, 17, 15,
824 15, 17, 17, 15, 15, 17, 17, 15, 15, 17,
825 17, 15, 15, 17, 17, 15, 15, 17, 17, 15,
826 15, 17, 17, 15, 15, 17, 17, 169, 138, 124,
827 105, 153, 99, 204, 173
834 0, 3, 4, 5, 6, 7, 8, 9, 10, 11,
835 12, 13, 14, 20, 21, 22, 25, 27, 28, 29,
836 31, 33, 34, 35, 38, 41, 48, 50, 52, 54,
837 55, 58, 60, 63, 16, 18, 24, 16, 18, 24,
838 16, 18, 24, 16, 18, 24, 16, 18, 24, 16,
839 18, 24, 16, 18, 24, 16, 18, 24, 16, 18,
840 24, 16, 18, 24, 16, 18, 24, 16, 18, 24,
841 16, 18, 24, 16, 18, 24, 16, 18, 24, 19,
842 0, 23, 64, 65, 16, 18, 64, 16, 18, 16,
843 45, 47, 16, 18, 16, 18, 61, 62, 65, 16,
844 18, 16, 18, 53, 56, 16, 18, 16, 18, 36,
845 39, 16, 18, 32, 38, 39, 41, 16, 18, 48,
846 51, 54, 55, 56, 16, 18, 42, 43, 48, 54,
847 55, 56, 16, 18, 49, 54, 55, 56, 16, 18,
848 64, 16, 18, 28, 30, 16, 18, 16, 16, 18,
849 16, 57, 59, 16, 18, 16, 37, 40, 16, 18,
850 28, 23, 15, 17, 64, 15, 64, 64, 15, 17,
851 45, 65, 15, 17, 61, 64, 15, 17, 53, 45,
852 15, 17, 36, 15, 17, 32, 15, 17, 51, 15,
853 17, 42, 15, 17, 49, 15, 64, 15, 17, 30,
854 64, 16, 16, 15, 17, 57, 16, 44, 46, 15,
855 17, 37, 23, 65, 15, 15, 15, 47, 15, 15,
856 62, 15, 15, 56, 15, 15, 39, 15, 38, 39,
857 41, 15, 48, 54, 55, 56, 15, 43, 15, 54,
858 55, 56, 15, 15, 28, 15, 15, 64, 64, 59,
859 15, 64, 15, 17, 40, 15, 23, 15, 15, 15,
866 0, 26, 27, 27, 28, 28, 28, 28, 28, 28,
867 28, 28, 28, 28, 28, 28, 28, 28, 28, 29,
868 29, 29, 29, 30, 30, 31, 31, 31, 31, 32,
869 32, 32, 32, 32, 32, 33, 33, 33, 33, 34,
870 34, 34, 34, 35, 35, 35, 35, 36, 36, 37,
871 37, 38, 38, 38, 38, 39, 39, 40, 41, 41,
872 41, 41, 42, 42, 43, 43, 43, 43, 44, 44,
873 45, 45, 46, 47, 48, 48, 48, 48, 49, 49,
874 49, 49, 49, 49, 50, 50, 50, 50, 51, 51,
875 51, 51, 51, 51, 51, 51, 52, 52, 52, 52,
876 53, 53, 54, 54, 54, 54, 55, 55, 55, 55,
877 56, 56, 57, 57, 58, 58, 58, 58, 59, 60,
878 60, 60, 60, 61, 61, 62, 62, 62, 63, 63,
879 63, 63, 64, 64, 65, 65, 65
885 0, 2, 1, 3, 1, 1, 1, 1, 1, 1,
886 1, 1, 1, 1, 1, 1, 1, 1, 1, 4,
887 5, 3, 2, 3, 1, 4, 5, 3, 2, 3,
888 3, 3, 1, 1, 1, 4, 5, 3, 2, 4,
889 5, 3, 2, 4, 5, 3, 2, 3, 1, 3,
890 1, 4, 5, 3, 2, 3, 1, 3, 4, 5,
891 3, 2, 3, 1, 1, 1, 1, 1, 3, 1,
892 3, 1, 3, 3, 4, 5, 3, 2, 3, 3,
893 3, 1, 1, 1, 4, 5, 3, 2, 3, 3,
894 3, 3, 1, 1, 1, 1, 4, 5, 3, 2,
895 3, 1, 4, 5, 3, 2, 4, 5, 3, 2,
896 3, 1, 3, 1, 6, 7, 3, 2, 5, 4,
897 5, 3, 2, 3, 1, 1, 3, 1, 4, 5,
902 #define yyerrok (yyerrstatus = 0) 903 #define yyclearin (yychar = YYEMPTY) 907 #define YYACCEPT goto yyacceptlab 908 #define YYABORT goto yyabortlab 909 #define YYERROR goto yyerrorlab 912 #define YYRECOVERING() (!!yyerrstatus) 914 #define YYBACKUP(Token, Value) \ 916 if (yychar == YYEMPTY) \ 920 YYPOPSTACK (yylen); \ 926 yyerror (YY_("syntax error: cannot back up")); \ 933 #define YYERRCODE 256 940 #ifndef YYLLOC_DEFAULT 941 # define YYLLOC_DEFAULT(Current, Rhs, N) \ 945 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ 946 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ 947 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ 948 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ 952 (Current).first_line = (Current).last_line = \ 953 YYRHSLOC (Rhs, 0).last_line; \ 954 (Current).first_column = (Current).last_column = \ 955 YYRHSLOC (Rhs, 0).last_column; \ 960 #define YYRHSLOC(Rhs, K) ((Rhs)[K]) 968 # define YYFPRINTF fprintf 971 # define YYDPRINTF(Args) \ 982 #ifndef YY_LOCATION_PRINT 983 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL 989 yy_location_print_ (FILE *yyo, YYLTYPE
const *
const yylocp)
995 res += YYFPRINTF (yyo,
"%d", yylocp->
first_line);
1003 res += YYFPRINTF (yyo,
"-%d", yylocp->
last_line);
1005 res += YYFPRINTF (yyo,
".%d", end_col);
1007 else if (0 <= end_col && yylocp->
first_column < end_col)
1008 res += YYFPRINTF (yyo,
"-%d", end_col);
1013 # define YY_LOCATION_PRINT(File, Loc) \ 1014 yy_location_print_ (File, &(Loc)) 1017 # define YY_LOCATION_PRINT(File, Loc) ((void) 0) 1022 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ 1026 YYFPRINTF (stderr, "%s ", Title); \ 1027 yy_symbol_print (stderr, \ 1028 Type, Value, Location); \ 1029 YYFPRINTF (stderr, "\n"); \ 1039 yy_symbol_value_print (FILE *yyo,
int yytype, YYSTYPE
const *
const yyvaluep, YYLTYPE
const *
const yylocationp)
1041 FILE *yyoutput = yyo;
1043 YYUSE (yylocationp);
1048 YYPRINT (yyo, yytoknum[yytype], *yyvaluep);
1059 yy_symbol_print (FILE *yyo,
int yytype, YYSTYPE
const *
const yyvaluep, YYLTYPE
const *
const yylocationp)
1061 YYFPRINTF (yyo,
"%s %s (",
1064 YY_LOCATION_PRINT (yyo, *yylocationp);
1065 YYFPRINTF (yyo,
": ");
1066 yy_symbol_value_print (yyo, yytype, yyvaluep, yylocationp);
1067 YYFPRINTF (yyo,
")");
1078 YYFPRINTF (stderr,
"Stack now");
1079 for (; yybottom <= yytop; yybottom++)
1081 int yybot = *yybottom;
1082 YYFPRINTF (stderr,
" %d", yybot);
1084 YYFPRINTF (stderr,
"\n");
1087 # define YY_STACK_PRINT(Bottom, Top) \ 1090 yy_stack_print ((Bottom), (Top)); \ 1099 yy_reduce_print (
yytype_int16 *yyssp, YYSTYPE *yyvsp, YYLTYPE *yylsp,
int yyrule)
1101 unsigned long yylno = yyrline[yyrule];
1102 int yynrhs =
yyr2[yyrule];
1104 YYFPRINTF (stderr,
"Reducing stack by rule %d (line %lu):\n",
1107 for (yyi = 0; yyi < yynrhs; yyi++)
1109 YYFPRINTF (stderr,
" $%d = ", yyi + 1);
1110 yy_symbol_print (stderr,
1111 yystos[yyssp[yyi + 1 - yynrhs]],
1112 &yyvsp[(yyi + 1) - (yynrhs)]
1113 , &(yylsp[(yyi + 1) - (yynrhs)]) );
1114 YYFPRINTF (stderr,
"\n");
1118 # define YY_REDUCE_PRINT(Rule) \ 1121 yy_reduce_print (yyssp, yyvsp, yylsp, Rule); \ 1128 # define YYDPRINTF(Args) 1129 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) 1130 # define YY_STACK_PRINT(Bottom, Top) 1131 # define YY_REDUCE_PRINT(Rule) 1137 # define YYINITDEPTH 200 1148 # define YYMAXDEPTH 10000 1155 # if defined __GLIBC__ && defined _STRING_H 1156 # define yystrlen strlen 1163 for (yylen = 0; yystr[yylen]; yylen++)
1171 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE 1172 # define yystpcpy stpcpy 1180 const char *yys = yysrc;
1182 while ((*yyd++ = *yys++) !=
'\0')
1204 char const *yyp = yystr;
1211 goto do_not_strip_quotes;
1215 goto do_not_strip_quotes;
1231 do_not_strip_quotes: ;
1255 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1259 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1289 int yyn =
yypact[*yyssp];
1290 yyarg[yycount++] =
yytname[yytoken];
1296 int yyxbegin = yyn < 0 ? -yyn : 0;
1298 int yychecklim =
YYLAST - yyn + 1;
1302 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1306 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1312 yyarg[yycount++] =
yytname[yyx];
1326 # define YYCASE_(N, S) \ 1332 YYCASE_(1,
YY_(
"syntax error, unexpected %s"));
1333 YYCASE_(2,
YY_(
"syntax error, unexpected %s, expecting %s"));
1334 YYCASE_(3,
YY_(
"syntax error, unexpected %s, expecting %s or %s"));
1335 YYCASE_(4,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s"));
1336 YYCASE_(5,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s"));
1348 if (*yymsg_alloc < yysize)
1350 *yymsg_alloc = 2 * yysize;
1351 if (! (yysize <= *yymsg_alloc
1363 while ((*yyp = *yyformat) !=
'\0')
1364 if (*yyp ==
'%' && yyformat[1] ==
's' && yyi < yycount)
1384 yydestruct (
const char *yymsg,
int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp)
1387 YYUSE (yylocationp);
1396 #line 195 "lwin_wkt_parse.y" 1398 #line 1399 "lwin_wkt_parse.c" 1402 #line 196 "lwin_wkt_parse.y" 1404 #line 1405 "lwin_wkt_parse.c" 1408 #line 203 "lwin_wkt_parse.y" 1410 #line 1411 "lwin_wkt_parse.c" 1414 #line 182 "lwin_wkt_parse.y" 1416 #line 1417 "lwin_wkt_parse.c" 1420 #line 210 "lwin_wkt_parse.y" 1422 #line 1423 "lwin_wkt_parse.c" 1426 #line 209 "lwin_wkt_parse.y" 1428 #line 1429 "lwin_wkt_parse.c" 1432 #line 202 "lwin_wkt_parse.y" 1434 #line 1435 "lwin_wkt_parse.c" 1438 #line 183 "lwin_wkt_parse.y" 1440 #line 1441 "lwin_wkt_parse.c" 1444 #line 184 "lwin_wkt_parse.y" 1446 #line 1447 "lwin_wkt_parse.c" 1450 #line 206 "lwin_wkt_parse.y" 1452 #line 1453 "lwin_wkt_parse.c" 1456 #line 208 "lwin_wkt_parse.y" 1458 #line 1459 "lwin_wkt_parse.c" 1462 #line 207 "lwin_wkt_parse.y" 1464 #line 1465 "lwin_wkt_parse.c" 1468 #line 193 "lwin_wkt_parse.y" 1470 #line 1471 "lwin_wkt_parse.c" 1474 #line 180 "lwin_wkt_parse.y" 1476 #line 1477 "lwin_wkt_parse.c" 1480 #line 194 "lwin_wkt_parse.y" 1482 #line 1483 "lwin_wkt_parse.c" 1486 #line 190 "lwin_wkt_parse.y" 1488 #line 1489 "lwin_wkt_parse.c" 1492 #line 189 "lwin_wkt_parse.y" 1494 #line 1495 "lwin_wkt_parse.c" 1498 #line 179 "lwin_wkt_parse.y" 1500 #line 1501 "lwin_wkt_parse.c" 1504 #line 178 "lwin_wkt_parse.y" 1506 #line 1507 "lwin_wkt_parse.c" 1510 #line 192 "lwin_wkt_parse.y" 1512 #line 1513 "lwin_wkt_parse.c" 1516 #line 188 "lwin_wkt_parse.y" 1518 #line 1519 "lwin_wkt_parse.c" 1522 #line 199 "lwin_wkt_parse.y" 1524 #line 1525 "lwin_wkt_parse.c" 1528 #line 187 "lwin_wkt_parse.y" 1530 #line 1531 "lwin_wkt_parse.c" 1534 #line 200 "lwin_wkt_parse.y" 1536 #line 1537 "lwin_wkt_parse.c" 1540 #line 186 "lwin_wkt_parse.y" 1542 #line 1543 "lwin_wkt_parse.c" 1546 #line 191 "lwin_wkt_parse.y" 1548 #line 1549 "lwin_wkt_parse.c" 1552 #line 197 "lwin_wkt_parse.y" 1554 #line 1555 "lwin_wkt_parse.c" 1558 #line 198 "lwin_wkt_parse.y" 1560 #line 1561 "lwin_wkt_parse.c" 1564 #line 181 "lwin_wkt_parse.y" 1566 #line 1567 "lwin_wkt_parse.c" 1570 #line 211 "lwin_wkt_parse.y" 1572 #line 1573 "lwin_wkt_parse.c" 1576 #line 212 "lwin_wkt_parse.y" 1578 #line 1579 "lwin_wkt_parse.c" 1582 #line 201 "lwin_wkt_parse.y" 1584 #line 1585 "lwin_wkt_parse.c" 1588 #line 185 "lwin_wkt_parse.y" 1590 #line 1591 "lwin_wkt_parse.c" 1594 #line 205 "lwin_wkt_parse.y" 1596 #line 1597 "lwin_wkt_parse.c" 1600 #line 204 "lwin_wkt_parse.y" 1602 #line 1603 "lwin_wkt_parse.c" 1606 #line 177 "lwin_wkt_parse.y" 1608 #line 1609 "lwin_wkt_parse.c" 1627 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL 1670 YYLTYPE yyerror_range[3];
1686 char *yymsg = yymsgbuf;
1687 YYSIZE_T yymsg_alloc =
sizeof yymsgbuf;
1690 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N)) 1696 yyssp = yyss = yyssa;
1697 yyvsp = yyvs = yyvsa;
1698 yylsp = yyls = yylsa;
1701 YYDPRINTF ((stderr,
"Starting parse\n"));
1724 YYDPRINTF ((stderr,
"Entering state %d\n", yystate));
1728 if (yyss + yystacksize - 1 <= yyssp)
1729 #if !defined yyoverflow && !defined YYSTACK_RELOCATE 1730 goto yyexhaustedlab;
1736 # if defined yyoverflow 1741 YYSTYPE *yyvs1 = yyvs;
1743 YYLTYPE *yyls1 = yyls;
1749 yyoverflow (
YY_(
"memory exhausted"),
1750 &yyss1, yysize *
sizeof (*yyssp),
1751 &yyvs1, yysize *
sizeof (*yyvsp),
1752 &yyls1, yysize *
sizeof (*yylsp),
1761 goto yyexhaustedlab;
1771 goto yyexhaustedlab;
1775 # undef YYSTACK_RELOCATE 1781 yyssp = yyss + yysize - 1;
1782 yyvsp = yyvs + yysize - 1;
1783 yylsp = yyls + yysize - 1;
1785 YYDPRINTF ((stderr,
"Stack size increased to %lu\n",
1786 (
unsigned long) yystacksize));
1788 if (yyss + yystacksize - 1 <= yyssp)
1816 YYDPRINTF ((stderr,
"Reading a token: "));
1823 YYDPRINTF ((stderr,
"Now at end of input.\n"));
1889 yyval = yyvsp[1-yylen];
1893 yyerror_range[1] = yyloc;
1898 #line 218 "lwin_wkt_parse.y" 1900 #line 1901 "lwin_wkt_parse.c" 1904 #line 220 "lwin_wkt_parse.y" 1906 #line 1907 "lwin_wkt_parse.c" 1910 #line 223 "lwin_wkt_parse.y" 1912 #line 1913 "lwin_wkt_parse.c" 1916 #line 224 "lwin_wkt_parse.y" 1918 #line 1919 "lwin_wkt_parse.c" 1922 #line 225 "lwin_wkt_parse.y" 1924 #line 1925 "lwin_wkt_parse.c" 1928 #line 226 "lwin_wkt_parse.y" 1930 #line 1931 "lwin_wkt_parse.c" 1934 #line 227 "lwin_wkt_parse.y" 1936 #line 1937 "lwin_wkt_parse.c" 1940 #line 228 "lwin_wkt_parse.y" 1942 #line 1943 "lwin_wkt_parse.c" 1946 #line 229 "lwin_wkt_parse.y" 1948 #line 1949 "lwin_wkt_parse.c" 1952 #line 230 "lwin_wkt_parse.y" 1954 #line 1955 "lwin_wkt_parse.c" 1958 #line 231 "lwin_wkt_parse.y" 1960 #line 1961 "lwin_wkt_parse.c" 1964 #line 232 "lwin_wkt_parse.y" 1966 #line 1967 "lwin_wkt_parse.c" 1970 #line 233 "lwin_wkt_parse.y" 1972 #line 1973 "lwin_wkt_parse.c" 1976 #line 234 "lwin_wkt_parse.y" 1978 #line 1979 "lwin_wkt_parse.c" 1982 #line 235 "lwin_wkt_parse.y" 1984 #line 1985 "lwin_wkt_parse.c" 1988 #line 236 "lwin_wkt_parse.y" 1990 #line 1991 "lwin_wkt_parse.c" 1994 #line 237 "lwin_wkt_parse.y" 1996 #line 1997 "lwin_wkt_parse.c" 2000 #line 241 "lwin_wkt_parse.y" 2002 #line 2003 "lwin_wkt_parse.c" 2006 #line 243 "lwin_wkt_parse.y" 2008 #line 2009 "lwin_wkt_parse.c" 2012 #line 245 "lwin_wkt_parse.y" 2014 #line 2015 "lwin_wkt_parse.c" 2018 #line 247 "lwin_wkt_parse.y" 2020 #line 2021 "lwin_wkt_parse.c" 2024 #line 251 "lwin_wkt_parse.y" 2026 #line 2027 "lwin_wkt_parse.c" 2030 #line 253 "lwin_wkt_parse.y" 2032 #line 2033 "lwin_wkt_parse.c" 2036 #line 257 "lwin_wkt_parse.y" 2038 #line 2039 "lwin_wkt_parse.c" 2042 #line 259 "lwin_wkt_parse.y" 2044 #line 2045 "lwin_wkt_parse.c" 2048 #line 261 "lwin_wkt_parse.y" 2050 #line 2051 "lwin_wkt_parse.c" 2054 #line 263 "lwin_wkt_parse.y" 2056 #line 2057 "lwin_wkt_parse.c" 2060 #line 267 "lwin_wkt_parse.y" 2062 #line 2063 "lwin_wkt_parse.c" 2066 #line 269 "lwin_wkt_parse.y" 2068 #line 2069 "lwin_wkt_parse.c" 2072 #line 271 "lwin_wkt_parse.y" 2074 #line 2075 "lwin_wkt_parse.c" 2078 #line 273 "lwin_wkt_parse.y" 2080 #line 2081 "lwin_wkt_parse.c" 2084 #line 275 "lwin_wkt_parse.y" 2086 #line 2087 "lwin_wkt_parse.c" 2090 #line 277 "lwin_wkt_parse.y" 2092 #line 2093 "lwin_wkt_parse.c" 2096 #line 281 "lwin_wkt_parse.y" 2098 #line 2099 "lwin_wkt_parse.c" 2102 #line 283 "lwin_wkt_parse.y" 2104 #line 2105 "lwin_wkt_parse.c" 2108 #line 285 "lwin_wkt_parse.y" 2110 #line 2111 "lwin_wkt_parse.c" 2114 #line 287 "lwin_wkt_parse.y" 2116 #line 2117 "lwin_wkt_parse.c" 2120 #line 291 "lwin_wkt_parse.y" 2122 #line 2123 "lwin_wkt_parse.c" 2126 #line 293 "lwin_wkt_parse.y" 2128 #line 2129 "lwin_wkt_parse.c" 2132 #line 295 "lwin_wkt_parse.y" 2134 #line 2135 "lwin_wkt_parse.c" 2138 #line 297 "lwin_wkt_parse.y" 2140 #line 2141 "lwin_wkt_parse.c" 2144 #line 301 "lwin_wkt_parse.y" 2146 #line 2147 "lwin_wkt_parse.c" 2150 #line 303 "lwin_wkt_parse.y" 2152 #line 2153 "lwin_wkt_parse.c" 2156 #line 305 "lwin_wkt_parse.y" 2158 #line 2159 "lwin_wkt_parse.c" 2162 #line 307 "lwin_wkt_parse.y" 2164 #line 2165 "lwin_wkt_parse.c" 2168 #line 311 "lwin_wkt_parse.y" 2170 #line 2171 "lwin_wkt_parse.c" 2174 #line 313 "lwin_wkt_parse.y" 2176 #line 2177 "lwin_wkt_parse.c" 2180 #line 317 "lwin_wkt_parse.y" 2182 #line 2183 "lwin_wkt_parse.c" 2186 #line 319 "lwin_wkt_parse.y" 2188 #line 2189 "lwin_wkt_parse.c" 2192 #line 323 "lwin_wkt_parse.y" 2194 #line 2195 "lwin_wkt_parse.c" 2198 #line 325 "lwin_wkt_parse.y" 2200 #line 2201 "lwin_wkt_parse.c" 2204 #line 327 "lwin_wkt_parse.y" 2206 #line 2207 "lwin_wkt_parse.c" 2210 #line 329 "lwin_wkt_parse.y" 2212 #line 2213 "lwin_wkt_parse.c" 2216 #line 333 "lwin_wkt_parse.y" 2218 #line 2219 "lwin_wkt_parse.c" 2222 #line 335 "lwin_wkt_parse.y" 2224 #line 2225 "lwin_wkt_parse.c" 2228 #line 338 "lwin_wkt_parse.y" 2230 #line 2231 "lwin_wkt_parse.c" 2234 #line 342 "lwin_wkt_parse.y" 2236 #line 2237 "lwin_wkt_parse.c" 2240 #line 344 "lwin_wkt_parse.y" 2242 #line 2243 "lwin_wkt_parse.c" 2246 #line 346 "lwin_wkt_parse.y" 2248 #line 2249 "lwin_wkt_parse.c" 2252 #line 348 "lwin_wkt_parse.y" 2254 #line 2255 "lwin_wkt_parse.c" 2258 #line 352 "lwin_wkt_parse.y" 2260 #line 2261 "lwin_wkt_parse.c" 2264 #line 354 "lwin_wkt_parse.y" 2266 #line 2267 "lwin_wkt_parse.c" 2270 #line 357 "lwin_wkt_parse.y" 2272 #line 2273 "lwin_wkt_parse.c" 2276 #line 358 "lwin_wkt_parse.y" 2278 #line 2279 "lwin_wkt_parse.c" 2282 #line 359 "lwin_wkt_parse.y" 2284 #line 2285 "lwin_wkt_parse.c" 2288 #line 360 "lwin_wkt_parse.y" 2290 #line 2291 "lwin_wkt_parse.c" 2294 #line 364 "lwin_wkt_parse.y" 2296 #line 2297 "lwin_wkt_parse.c" 2300 #line 366 "lwin_wkt_parse.y" 2302 #line 2303 "lwin_wkt_parse.c" 2306 #line 370 "lwin_wkt_parse.y" 2308 #line 2309 "lwin_wkt_parse.c" 2312 #line 372 "lwin_wkt_parse.y" 2314 #line 2315 "lwin_wkt_parse.c" 2318 #line 375 "lwin_wkt_parse.y" 2320 #line 2321 "lwin_wkt_parse.c" 2324 #line 378 "lwin_wkt_parse.y" 2326 #line 2327 "lwin_wkt_parse.c" 2330 #line 382 "lwin_wkt_parse.y" 2332 #line 2333 "lwin_wkt_parse.c" 2336 #line 384 "lwin_wkt_parse.y" 2338 #line 2339 "lwin_wkt_parse.c" 2342 #line 386 "lwin_wkt_parse.y" 2344 #line 2345 "lwin_wkt_parse.c" 2348 #line 388 "lwin_wkt_parse.y" 2350 #line 2351 "lwin_wkt_parse.c" 2354 #line 392 "lwin_wkt_parse.y" 2356 #line 2357 "lwin_wkt_parse.c" 2360 #line 394 "lwin_wkt_parse.y" 2362 #line 2363 "lwin_wkt_parse.c" 2366 #line 396 "lwin_wkt_parse.y" 2368 #line 2369 "lwin_wkt_parse.c" 2372 #line 398 "lwin_wkt_parse.y" 2374 #line 2375 "lwin_wkt_parse.c" 2378 #line 400 "lwin_wkt_parse.y" 2380 #line 2381 "lwin_wkt_parse.c" 2384 #line 402 "lwin_wkt_parse.y" 2386 #line 2387 "lwin_wkt_parse.c" 2390 #line 406 "lwin_wkt_parse.y" 2392 #line 2393 "lwin_wkt_parse.c" 2396 #line 408 "lwin_wkt_parse.y" 2398 #line 2399 "lwin_wkt_parse.c" 2402 #line 410 "lwin_wkt_parse.y" 2404 #line 2405 "lwin_wkt_parse.c" 2408 #line 412 "lwin_wkt_parse.y" 2410 #line 2411 "lwin_wkt_parse.c" 2414 #line 416 "lwin_wkt_parse.y" 2416 #line 2417 "lwin_wkt_parse.c" 2420 #line 418 "lwin_wkt_parse.y" 2422 #line 2423 "lwin_wkt_parse.c" 2426 #line 420 "lwin_wkt_parse.y" 2428 #line 2429 "lwin_wkt_parse.c" 2432 #line 422 "lwin_wkt_parse.y" 2434 #line 2435 "lwin_wkt_parse.c" 2438 #line 424 "lwin_wkt_parse.y" 2440 #line 2441 "lwin_wkt_parse.c" 2444 #line 426 "lwin_wkt_parse.y" 2446 #line 2447 "lwin_wkt_parse.c" 2450 #line 428 "lwin_wkt_parse.y" 2452 #line 2453 "lwin_wkt_parse.c" 2456 #line 430 "lwin_wkt_parse.y" 2458 #line 2459 "lwin_wkt_parse.c" 2462 #line 434 "lwin_wkt_parse.y" 2464 #line 2465 "lwin_wkt_parse.c" 2468 #line 436 "lwin_wkt_parse.y" 2470 #line 2471 "lwin_wkt_parse.c" 2474 #line 438 "lwin_wkt_parse.y" 2476 #line 2477 "lwin_wkt_parse.c" 2480 #line 440 "lwin_wkt_parse.y" 2482 #line 2483 "lwin_wkt_parse.c" 2486 #line 444 "lwin_wkt_parse.y" 2488 #line 2489 "lwin_wkt_parse.c" 2492 #line 446 "lwin_wkt_parse.y" 2494 #line 2495 "lwin_wkt_parse.c" 2498 #line 450 "lwin_wkt_parse.y" 2500 #line 2501 "lwin_wkt_parse.c" 2504 #line 452 "lwin_wkt_parse.y" 2506 #line 2507 "lwin_wkt_parse.c" 2510 #line 454 "lwin_wkt_parse.y" 2512 #line 2513 "lwin_wkt_parse.c" 2516 #line 456 "lwin_wkt_parse.y" 2518 #line 2519 "lwin_wkt_parse.c" 2522 #line 460 "lwin_wkt_parse.y" 2524 #line 2525 "lwin_wkt_parse.c" 2528 #line 462 "lwin_wkt_parse.y" 2530 #line 2531 "lwin_wkt_parse.c" 2534 #line 464 "lwin_wkt_parse.y" 2536 #line 2537 "lwin_wkt_parse.c" 2540 #line 466 "lwin_wkt_parse.y" 2542 #line 2543 "lwin_wkt_parse.c" 2546 #line 470 "lwin_wkt_parse.y" 2548 #line 2549 "lwin_wkt_parse.c" 2552 #line 472 "lwin_wkt_parse.y" 2554 #line 2555 "lwin_wkt_parse.c" 2558 #line 476 "lwin_wkt_parse.y" 2560 #line 2561 "lwin_wkt_parse.c" 2564 #line 478 "lwin_wkt_parse.y" 2566 #line 2567 "lwin_wkt_parse.c" 2570 #line 482 "lwin_wkt_parse.y" 2572 #line 2573 "lwin_wkt_parse.c" 2576 #line 484 "lwin_wkt_parse.y" 2578 #line 2579 "lwin_wkt_parse.c" 2582 #line 486 "lwin_wkt_parse.y" 2584 #line 2585 "lwin_wkt_parse.c" 2588 #line 488 "lwin_wkt_parse.y" 2590 #line 2591 "lwin_wkt_parse.c" 2594 #line 492 "lwin_wkt_parse.y" 2596 #line 2597 "lwin_wkt_parse.c" 2600 #line 496 "lwin_wkt_parse.y" 2602 #line 2603 "lwin_wkt_parse.c" 2606 #line 498 "lwin_wkt_parse.y" 2608 #line 2609 "lwin_wkt_parse.c" 2612 #line 500 "lwin_wkt_parse.y" 2614 #line 2615 "lwin_wkt_parse.c" 2618 #line 502 "lwin_wkt_parse.y" 2620 #line 2621 "lwin_wkt_parse.c" 2624 #line 506 "lwin_wkt_parse.y" 2626 #line 2627 "lwin_wkt_parse.c" 2630 #line 508 "lwin_wkt_parse.y" 2632 #line 2633 "lwin_wkt_parse.c" 2636 #line 512 "lwin_wkt_parse.y" 2638 #line 2639 "lwin_wkt_parse.c" 2642 #line 514 "lwin_wkt_parse.y" 2644 #line 2645 "lwin_wkt_parse.c" 2648 #line 516 "lwin_wkt_parse.y" 2650 #line 2651 "lwin_wkt_parse.c" 2654 #line 520 "lwin_wkt_parse.y" 2656 #line 2657 "lwin_wkt_parse.c" 2660 #line 522 "lwin_wkt_parse.y" 2662 #line 2663 "lwin_wkt_parse.c" 2666 #line 524 "lwin_wkt_parse.y" 2668 #line 2669 "lwin_wkt_parse.c" 2672 #line 526 "lwin_wkt_parse.y" 2674 #line 2675 "lwin_wkt_parse.c" 2678 #line 530 "lwin_wkt_parse.y" 2680 #line 2681 "lwin_wkt_parse.c" 2684 #line 532 "lwin_wkt_parse.y" 2686 #line 2687 "lwin_wkt_parse.c" 2690 #line 536 "lwin_wkt_parse.y" 2692 #line 2693 "lwin_wkt_parse.c" 2696 #line 538 "lwin_wkt_parse.y" 2698 #line 2699 "lwin_wkt_parse.c" 2702 #line 540 "lwin_wkt_parse.y" 2704 #line 2705 "lwin_wkt_parse.c" 2708 #line 2709 "lwin_wkt_parse.c" 2737 const int yyi =
yypgoto[yylhs] + *yyssp;
2738 yystate = (0 <= yyi && yyi <=
YYLAST &&
yycheck[yyi] == *yyssp
2758 #if ! YYERROR_VERBOSE 2761 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ 2764 char const *yymsgp =
YY_(
"syntax error");
2765 int yysyntax_error_status;
2767 if (yysyntax_error_status == 0)
2769 else if (yysyntax_error_status == 1)
2771 if (yymsg != yymsgbuf)
2777 yymsg_alloc =
sizeof yymsgbuf;
2778 yysyntax_error_status = 2;
2787 if (yysyntax_error_status == 2)
2788 goto yyexhaustedlab;
2790 # undef YYSYNTAX_ERROR 2794 yyerror_range[1] =
yylloc;
2796 if (yyerrstatus == 3)
2810 yytoken, &yylval, &
yylloc);
2862 yyerror_range[1] = *yylsp;
2864 yystos[yystate], yyvsp, yylsp);
2874 yyerror_range[2] =
yylloc;
2903 #if !defined yyoverflow || YYERROR_VERBOSE 2924 yytoken, &yylval, &
yylloc);
2930 while (yyssp != yyss)
2933 yystos[*yyssp], yyvsp, yylsp);
2941 if (yymsg != yymsgbuf)
2946 #line 542 "lwin_wkt_parse.y"
LWGEOM * wkt_parser_polygon_finalize(LWGEOM *poly, char *dimensionality)
LWGEOM * wkt_parser_triangle_new(POINTARRAY *pa, char *dimensionality)
#define COMPOUNDCURVE_TOK
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
LWGEOM * wkt_parser_point_new(POINTARRAY *pa, char *dimensionality)
Create a new point.
LWGEOM * wkt_parser_collection_add_geom(LWGEOM *col, LWGEOM *geom)
#define yypact_value_is_default(Yystate)
int wkt_yylex_destroy(void)
static YYSIZE_T yystrlen(const char *yystr)
static const yytype_uint8 yydefact[]
LWGEOM * wkt_parser_polygon_add_ring(LWGEOM *poly, POINTARRAY *pa, char dimcheck)
#define YY_ATTRIBUTE_UNUSED
POINTARRAY * ptarrayvalue
LWGEOM * wkt_parser_curvepolygon_new(LWGEOM *ring)
LWGEOM * wkt_parser_circularstring_new(POINTARRAY *pa, char *dimensionality)
Create a new circularstring.
void lwgeom_free(LWGEOM *geom)
void ptarray_free(POINTARRAY *pa)
unsigned short yytype_uint16
LWGEOM * wkt_parser_collection_new(LWGEOM *geom)
void wkt_yyerror(const char *str)
static char * yystpcpy(char *yydest, const char *yysrc)
#define POLYHEDRALSURFACETYPE
#define DIMENSIONALITY_TOK
static const yytype_uint8 yycheck[]
LWGEOM * wkt_parser_linestring_new(POINTARRAY *pa, char *dimensionality)
Create a new linestring.
void wkt_lexer_init(char *str)
int lwgeom_parse_wkt(LWGEOM_PARSER_RESULT *parser_result, char *wktstr, int parser_check_flags)
Parse a WKT geometry string into an LWGEOM structure.
static const yytype_uint8 yytranslate[]
static const yytype_uint8 yyr1[]
#define yytable_value_is_error(Yytable_value)
LWGEOM * wkt_parser_curvepolygon_finalize(LWGEOM *poly, char *dimensionality)
LWGEOM * wkt_parser_collection_finalize(int lwtype, LWGEOM *geom, char *dimensionality)
POINTARRAY * wkt_parser_ptarray_new(POINT p)
Start a point array from the first coordinate.
POINTARRAY * wkt_parser_ptarray_add_coord(POINTARRAY *pa, POINT p)
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
Parser result structure: returns the result of attempting to convert (E)WKT/(E)WKB to LWGEOM...
#define YYSTACK_ALLOC_MAXIMUM
#define SRID_UNKNOWN
Unknown SRID value.
static const yytype_uint8 yyr2[]
static int yysyntax_error(YYSIZE_T *yymsg_alloc, char **yymsg, yytype_int16 *yyssp, int yytoken)
static const yytype_uint8 yystos[]
void wkt_lexer_close(void)
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
static const yytype_int16 yypgoto[]
POINT wkt_parser_coord_2(double c1, double c2)
Build a 2d coordinate.
static const char *const yytname[]
LWGEOM * wkt_parser_compound_add_geom(LWGEOM *col, LWGEOM *geom)
#define YYLLOC_DEFAULT(Current, Rhs, N)
LWGEOM * wkt_parser_polygon_new(POINTARRAY *pa, char dimcheck)
const char * parser_error_messages[]
POINT wkt_parser_coord_3(double c1, double c2, double c3)
Note, if this is an XYM coordinate we'll have to fix it later when we build the object itself and hav...
static void yydestruct(const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp)
void lwgeom_parser_result_init(LWGEOM_PARSER_RESULT *parser_result)
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
#define YY_STACK_PRINT(Bottom, Top)
static YYSIZE_T yytnamerr(char *yyres, const char *yystr)
void wkt_parser_geometry_new(LWGEOM *geom, int srid)
LWGEOM_PARSER_RESULT global_parser_result
#define POLYHEDRALSURFACE_TOK
LWGEOM * wkt_parser_curvepolygon_add_ring(LWGEOM *poly, LWGEOM *ring)
#define CIRCULARSTRING_TOK
#define YY_REDUCE_PRINT(Rule)
static const yytype_int16 yypact[]
#define LWDEBUGF(level, msg,...)
unsigned char yytype_uint8
static const yytype_int16 yydefgoto[]
#define PARSER_ERROR_OTHER
static const yytype_uint16 yytable[]
POINT wkt_parser_coord_4(double c1, double c2, double c3, double c4)
LWGEOM * wkt_parser_compound_new(LWGEOM *geom)