Terminals unused in grammar END Rules useless in parser due to conflicts 44 TypeSignatureComponents: ID '=' State 202 conflicts: 1 shift/reduce State 281 conflicts: 1 reduce/reduce Grammar 0 $accept: Program $end 1 @1: %empty 2 Program: @1 Denotation '=' 3 | error 4 $@2: %empty 5 Program: error $@2 Denotation.seq 6 Parameters: Id.list Opt.Colon Signature '=' 7 | Signature '=' 8 | error 9 Opt.Colon: COLON 10 | %empty 11 Opt.Parameters: Parameters '=' 12 | '=' 13 Opt.Parameter.list: Opt.Parameters '=' 14 | Opt.Parameter.list ';' Opt.Parameters '=' 15 Id.list: ID '=' 16 | Id.list ',' ID '=' 17 Signature: ID 18 | ManifestSignature 19 ManifestSignature: SIGNATURE 20 | VAR BasicDenotation '=' 21 | VAL BasicDenotation '=' 22 | FuncSignature '=' 23 | TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 29 Opt.Simple: ID '=' 30 | '=' 31 Opt.InLine: '(' ID QSTRING ')' 32 | '=' 33 Special: '(' ID ID UQSTRING ')' 34 FuncSignature: FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 36 Opt.TypeSignatureComponents: TypeSignatureComponents '=' 37 | '=' 38 Opt.TypeSignatureComponent.list: Opt.TypeSignatureComponents '=' 39 | Opt.TypeSignatureComponent.list ';' Opt.TypeSignatureComponents '=' 40 Opt.Id: ID '=' 41 | '=' 42 TypeSignatureComponents: Id.list Opt.Colon Signature '=' 43 | Id.list Opt.Colon Opt.Readonly FIELD BasicDenotation '=' 44 | ID '=' 45 | CHARACTERS '=' 46 | error 47 Opt.Readonly: READONLY '=' 48 | '=' 49 Denotation: ManifestSignature 50 | BasicDenotation 51 BasicDenotation: Primary.list '=' 52 | '\002' '=' 53 Primary.list: Primary '=' 54 | ArgList 55 | Primary.list Primary 56 | Primary.list ArgList 57 Primary: FuncConstruction 58 | Selection 59 | CAND 60 | COR 61 | TypeConstruction 62 | Primary TypeModifier 63 | '(' Denotation.seq ')' 64 | IF GuardedDenotation.list FI '=' 65 | DO GuardedDenotation.list OD '=' 66 | LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | EXTERN '{' QSTRING '}' '=' 69 Denotation.seq: Denotation.seq ';' Opt.Denotation '=' 70 | Denotation '=' 71 | error 72 Opt.Denotation: Denotation '=' 73 | '=' 74 FuncConstruction: IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: FuncSignature '=' 77 | FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: Primary '$' ID Opt.SigClause '=' 80 | Primary '$' STRING '=' 81 | ID Opt.SigClause '=' 82 | STRING '=' 83 TypeConstruction: Enumeration '=' 84 | Record '=' 85 | Extension '=' 86 | Product '=' 87 | Union '=' 88 Guard: Denotation '=' 89 | ELSE '=' 90 | error 91 ArgList: '[' Opt.Denotation.list ']' '=' 92 Opt.Denotation.list: Denotation '=' 93 | Denotation ',' Opt.Denotation.list '=' 94 | '=' 95 Opt.Declaration.list: Opt.Declarations '=' 96 | Opt.Declaration.list ';' Opt.Declarations '=' 97 Opt.Declarations: Id.list Opt.ColonSignature EQUALS_EQUALS Denotation '=' 98 | Id.list Opt.ColonSignature EQUALS_EQUALS_EQUALS Denotation '=' 99 | '=' 100 | error 101 Opt.ColonSignature: Opt.Colon Signature '=' 102 | '=' 103 Enumeration: ENUM '{' Id.list '}' '=' 104 Extension: EXTEND '{' Denotation '}' '=' 105 Product: PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | PROD error 107 Record: RECORD '{' Opt.RecordElement.list '}' '=' 108 | RECORD error 109 Union: UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | UNION error 111 Opt.RecordElement.list: Opt.RecordElements '=' 112 | Opt.RecordElement.list ';' Opt.RecordElements '=' 113 Opt.RecordElements: RecordElements '=' 114 | '=' 115 RecordElements: Id.list Opt.Colon Denotation '=' 116 TypeModifier: WithList '=' 117 | ExportList '=' 118 WithList: WITH Opt.Id '{' Opt.Declaration.list '}' '=' 119 | WITH error 120 ExportList: Start.ExportList Opt.Id '{' ExportElement.list '}' '=' 121 | EXPORT error 122 | HIDE error 123 Start.ExportList: EXPORT '=' 124 | HIDE '=' 125 ExportElement.list: ExportElement '=' 126 | ExportElement ';' ExportElement.list '=' 127 | '=' 128 ExportElement: ID Opt.SigClause Opt.ExportList '=' 129 | CONSTANTS '=' 130 | error 131 Opt.ExportList: ExportList '=' 132 | '=' 133 Opt.SigClause: LEFT_ANGLE_BRACKET Signature RIGHT_ANGLE_BRACKET '=' 134 | '=' 135 Opt.ElseList: ElseList 136 | %empty 137 ElseList: ELSE Denotation.seq 138 | ELSIF Denotation THEN Denotation.seq Opt.ElseList 139 GuardedDenotation.list: GuardedDenotation '=' 140 | GuardedDenotation.list '#' GuardedDenotation '=' 141 | Denotation THEN Denotation.seq Opt.ElseList 142 | error 143 GuardedDenotation: Guard RIGHT_ARROW Denotation.seq '=' 144 ID: WORDID '=' 145 | OPID '=' 146 STRING: QSTRING '=' 147 | UQSTRING '=' Terminals, with rules where they appear $end (0) 0 '\002' (2) 52 '#' (35) 140 '$' (36) 79 80 '(' (40) 23 24 25 26 27 31 33 63 ')' (41) 23 24 25 26 27 31 33 63 ',' (44) 16 93 ';' (59) 14 39 69 96 112 126 '=' (61) 2 6 7 11 12 13 14 15 16 20 21 22 23 24 25 26 27 28 29 30 32 34 35 36 37 38 39 40 41 42 43 44 45 47 48 51 52 53 64 65 66 67 68 69 70 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 91 92 93 94 95 96 97 98 99 101 102 103 104 105 107 109 111 112 113 114 115 116 117 118 120 123 124 125 126 127 128 129 131 132 133 134 139 140 143 144 145 146 147 '[' (91) 34 35 77 78 91 ']' (93) 34 35 77 78 91 '{' (123) 23 24 25 26 27 28 68 74 75 103 104 105 107 109 118 120 '}' (125) 23 24 25 26 27 28 68 74 75 103 104 105 107 109 118 120 error (256) 3 5 8 46 71 90 100 106 108 110 119 121 122 130 142 CAND (258) 59 CHARACTERS (259) 45 CONSTANTS (260) 23 24 25 26 129 COR (261) 60 DO (262) 65 ELSE (263) 89 137 ELSIF (264) 138 END (265) ENUM (266) 103 EXPORT (267) 121 123 FI (268) 64 FIELD (269) 43 FUNC (270) 34 35 77 78 HIDE (271) 122 124 IF (272) 64 IN (273) 66 67 EXTEND (274) 104 LET (275) 66 NI (276) 66 67 OD (277) 65 READONLY (278) 47 RECORD (279) 107 108 THEN (280) 138 141 TYPE (281) 23 24 25 26 27 28 UNION (282) 109 110 USE (283) 67 VAL (284) 21 VAR (285) 20 WITH (286) 118 119 RIGHT_ARROW (287) 143 EQUALS_EQUALS (288) 97 EQUALS_EQUALS_EQUALS (289) 98 COLON (290) 9 WORDID (291) 144 OPID (292) 145 PROD (293) 105 106 QSTRING (294) 23 24 25 26 31 68 75 146 UQSTRING (295) 23 24 33 147 LEFT_ANGLE_BRACKET (296) 133 RIGHT_ANGLE_BRACKET (297) 133 EXTERN (298) 68 75 SIGNATURE (299) 19 Nonterminals, with rules where they appear $accept (57) on left: 0 Program (58) on left: 2 3 5, on right: 0 @1 (59) on left: 1, on right: 2 $@2 (60) on left: 4, on right: 5 Parameters (61) on left: 6 7 8, on right: 11 Opt.Colon (62) on left: 9 10, on right: 6 42 43 101 115 Opt.Parameters (63) on left: 11 12, on right: 13 14 Opt.Parameter.list (64) on left: 13 14, on right: 14 34 35 77 78 105 109 Id.list (65) on left: 15 16, on right: 6 16 42 43 97 98 103 115 Signature (66) on left: 17 18, on right: 6 7 34 35 42 101 133 ManifestSignature (67) on left: 19 20 21 22 23 24 25 26 27 28, on right: 18 49 Opt.Simple (68) on left: 29 30, on right: 23 24 25 26 27 Opt.InLine (69) on left: 31 32, on right: 34 35 77 78 Special (70) on left: 33, on right: 34 77 FuncSignature (71) on left: 34 35, on right: 22 76 Opt.TypeSignatureComponents (72) on left: 36 37, on right: 38 39 Opt.TypeSignatureComponent.list (73) on left: 38 39, on right: 23 24 25 26 27 28 39 Opt.Id (74) on left: 40 41, on right: 23 24 25 26 27 28 105 109 118 120 TypeSignatureComponents (75) on left: 42 43 44 45 46, on right: 36 Opt.Readonly (76) on left: 47 48, on right: 43 Denotation (77) on left: 49 50, on right: 2 70 72 88 92 93 97 98 104 115 138 141 BasicDenotation (78) on left: 51 52, on right: 20 21 43 50 Primary.list (79) on left: 53 54 55 56, on right: 51 55 56 Primary (80) on left: 57 58 59 60 61 62 63 64 65 66 67 68, on right: 53 55 62 79 80 Denotation.seq (81) on left: 69 70 71, on right: 5 63 66 67 69 74 137 138 141 143 Opt.Denotation (82) on left: 72 73, on right: 69 FuncConstruction (83) on left: 74 75, on right: 57 IncompleteFuncSignature (84) on left: 76 77 78, on right: 74 75 Selection (85) on left: 79 80 81 82, on right: 58 TypeConstruction (86) on left: 83 84 85 86 87, on right: 61 Guard (87) on left: 88 89 90, on right: 143 ArgList (88) on left: 91, on right: 54 56 Opt.Denotation.list (89) on left: 92 93 94, on right: 67 91 93 Opt.Declaration.list (90) on left: 95 96, on right: 66 96 118 Opt.Declarations (91) on left: 97 98 99 100, on right: 95 96 Opt.ColonSignature (92) on left: 101 102, on right: 97 98 Enumeration (93) on left: 103, on right: 83 Extension (94) on left: 104, on right: 85 Product (95) on left: 105 106, on right: 86 Record (96) on left: 107 108, on right: 84 Union (97) on left: 109 110, on right: 87 Opt.RecordElement.list (98) on left: 111 112, on right: 107 112 Opt.RecordElements (99) on left: 113 114, on right: 111 112 RecordElements (100) on left: 115, on right: 113 TypeModifier (101) on left: 116 117, on right: 62 WithList (102) on left: 118 119, on right: 116 ExportList (103) on left: 120 121 122, on right: 117 131 Start.ExportList (104) on left: 123 124, on right: 120 ExportElement.list (105) on left: 125 126 127, on right: 120 126 ExportElement (106) on left: 128 129 130, on right: 125 126 Opt.ExportList (107) on left: 131 132, on right: 128 Opt.SigClause (108) on left: 133 134, on right: 79 81 128 Opt.ElseList (109) on left: 135 136, on right: 138 141 ElseList (110) on left: 137 138, on right: 135 GuardedDenotation.list (111) on left: 139 140 141 142, on right: 64 65 140 GuardedDenotation (112) on left: 143, on right: 139 140 ID (113) on left: 144 145, on right: 15 16 17 29 31 33 40 44 79 81 128 STRING (114) on left: 146 147, on right: 80 82 State 0 0 $accept: . Program $end 1 @1: . %empty [CAND, COR, DO, ENUM, FUNC, IF, EXTEND, LET, RECORD, TYPE, UNION, USE, VAL, VAR, WORDID, OPID, PROD, QSTRING, UQSTRING, EXTERN, SIGNATURE, '(', '[', '\002'] 2 Program: . @1 Denotation '=' 3 | . error 5 | . error $@2 Denotation.seq error shift, and go to state 1 CAND reduce using rule 1 (@1) COR reduce using rule 1 (@1) DO reduce using rule 1 (@1) ENUM reduce using rule 1 (@1) FUNC reduce using rule 1 (@1) IF reduce using rule 1 (@1) EXTEND reduce using rule 1 (@1) LET reduce using rule 1 (@1) RECORD reduce using rule 1 (@1) TYPE reduce using rule 1 (@1) UNION reduce using rule 1 (@1) USE reduce using rule 1 (@1) VAL reduce using rule 1 (@1) VAR reduce using rule 1 (@1) WORDID reduce using rule 1 (@1) OPID reduce using rule 1 (@1) PROD reduce using rule 1 (@1) QSTRING reduce using rule 1 (@1) UQSTRING reduce using rule 1 (@1) EXTERN reduce using rule 1 (@1) SIGNATURE reduce using rule 1 (@1) '(' reduce using rule 1 (@1) '[' reduce using rule 1 (@1) '\002' reduce using rule 1 (@1) Program go to state 2 @1 go to state 3 State 1 3 Program: error . [$end] 4 $@2: . %empty [error, CAND, COR, DO, ENUM, FUNC, IF, EXTEND, LET, RECORD, TYPE, UNION, USE, VAL, VAR, WORDID, OPID, PROD, QSTRING, UQSTRING, EXTERN, SIGNATURE, '(', '[', '\002'] 5 Program: error . $@2 Denotation.seq $end reduce using rule 3 (Program) $default reduce using rule 4 ($@2) $@2 go to state 4 State 2 0 $accept: Program . $end $end shift, and go to state 5 State 3 2 Program: @1 . Denotation '=' 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 32 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 4 5 Program: error $@2 . Denotation.seq 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 69 Denotation.seq: . Denotation.seq ';' Opt.Denotation '=' 70 | . Denotation '=' 71 | . error 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' error shift, and go to state 48 CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 49 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 Denotation.seq go to state 50 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 5 0 $accept: Program $end . $default accept State 6 59 Primary: CAND . $default reduce using rule 59 (Primary) State 7 60 Primary: COR . $default reduce using rule 60 (Primary) State 8 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 65 | DO . GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 88 Guard: . Denotation '=' 89 | . ELSE '=' 90 | . error 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 139 GuardedDenotation.list: . GuardedDenotation '=' 140 | . GuardedDenotation.list '#' GuardedDenotation '=' 141 | . Denotation THEN Denotation.seq Opt.ElseList 142 | . error 143 GuardedDenotation: . Guard RIGHT_ARROW Denotation.seq '=' 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' error shift, and go to state 51 CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ELSE shift, and go to state 52 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 53 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 Guard go to state 54 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 GuardedDenotation.list go to state 55 GuardedDenotation go to state 56 ID go to state 46 STRING go to state 47 State 9 103 Enumeration: ENUM . '{' Id.list '}' '=' '{' shift, and go to state 57 State 10 31 Opt.InLine: . '(' ID QSTRING ')' 32 | . '=' 33 Special: . '(' ID ID UQSTRING ')' 34 FuncSignature: FUNC . Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | FUNC . Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 77 IncompleteFuncSignature: FUNC . Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | FUNC . Opt.InLine '[' Opt.Parameter.list ']' '=' '=' shift, and go to state 58 '(' shift, and go to state 59 Opt.InLine go to state 60 Special go to state 61 State 11 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 64 | IF . GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 88 Guard: . Denotation '=' 89 | . ELSE '=' 90 | . error 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 139 GuardedDenotation.list: . GuardedDenotation '=' 140 | . GuardedDenotation.list '#' GuardedDenotation '=' 141 | . Denotation THEN Denotation.seq Opt.ElseList 142 | . error 143 GuardedDenotation: . Guard RIGHT_ARROW Denotation.seq '=' 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' error shift, and go to state 51 CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ELSE shift, and go to state 52 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 53 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 Guard go to state 54 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 GuardedDenotation.list go to state 62 GuardedDenotation go to state 56 ID go to state 46 STRING go to state 47 State 12 104 Extension: EXTEND . '{' Denotation '}' '=' '{' shift, and go to state 63 State 13 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 66 Primary: LET . Opt.Declaration.list IN Denotation.seq NI '=' 95 Opt.Declaration.list: . Opt.Declarations '=' 96 | . Opt.Declaration.list ';' Opt.Declarations '=' 97 Opt.Declarations: . Id.list Opt.ColonSignature EQUALS_EQUALS Denotation '=' 98 | . Id.list Opt.ColonSignature EQUALS_EQUALS_EQUALS Denotation '=' 99 | . '=' 100 | . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 64 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 65 Id.list go to state 66 Opt.Declaration.list go to state 67 Opt.Declarations go to state 68 ID go to state 69 State 14 107 Record: RECORD . '{' Opt.RecordElement.list '}' '=' 108 | RECORD . error error shift, and go to state 70 '{' shift, and go to state 71 State 15 23 ManifestSignature: TYPE . '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | TYPE . '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | TYPE . '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | TYPE . '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | TYPE . '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | TYPE . Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 40 Opt.Id: . ID '=' 41 | . '=' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 72 '(' shift, and go to state 73 Opt.Id go to state 74 ID go to state 75 State 16 40 Opt.Id: . ID '=' 41 | . '=' 109 Union: UNION . Opt.Id '{' Opt.Parameter.list '}' '=' 110 | UNION . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 76 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 72 Opt.Id go to state 77 ID go to state 75 State 17 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 67 | USE . Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 92 Opt.Denotation.list: . Denotation '=' 93 | . Denotation ',' Opt.Denotation.list '=' 94 | . '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '=' shift, and go to state 78 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 79 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Opt.Denotation.list go to state 80 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 18 21 ManifestSignature: VAL . BasicDenotation '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 UNION shift, and go to state 16 USE shift, and go to state 17 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 FuncSignature go to state 81 BasicDenotation go to state 82 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 19 20 ManifestSignature: VAR . BasicDenotation '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 UNION shift, and go to state 16 USE shift, and go to state 17 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 FuncSignature go to state 81 BasicDenotation go to state 83 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 20 144 ID: WORDID . '=' '=' shift, and go to state 84 State 21 145 ID: OPID . '=' '=' shift, and go to state 85 State 22 40 Opt.Id: . ID '=' 41 | . '=' 105 Product: PROD . Opt.Id '{' Opt.Parameter.list '}' '=' 106 | PROD . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 86 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 72 Opt.Id go to state 87 ID go to state 75 State 23 146 STRING: QSTRING . '=' '=' shift, and go to state 88 State 24 147 STRING: UQSTRING . '=' '=' shift, and go to state 89 State 25 68 Primary: EXTERN . '{' QSTRING '}' '=' '{' shift, and go to state 90 State 26 19 ManifestSignature: SIGNATURE . $default reduce using rule 19 (ManifestSignature) State 27 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 63 | '(' . Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 69 Denotation.seq: . Denotation.seq ';' Opt.Denotation '=' 70 | . Denotation '=' 71 | . error 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' error shift, and go to state 48 CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 49 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 Denotation.seq go to state 91 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 28 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 91 | '[' . Opt.Denotation.list ']' '=' 92 Opt.Denotation.list: . Denotation '=' 93 | . Denotation ',' Opt.Denotation.list '=' 94 | . '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '=' shift, and go to state 78 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 79 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Opt.Denotation.list go to state 92 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 29 52 BasicDenotation: '\002' . '=' '=' shift, and go to state 93 State 30 49 Denotation: ManifestSignature . $default reduce using rule 49 (Denotation) State 31 22 ManifestSignature: FuncSignature . '=' 76 IncompleteFuncSignature: FuncSignature . '=' '=' shift, and go to state 94 State 32 2 Program: @1 Denotation . '=' '=' shift, and go to state 95 State 33 50 Denotation: BasicDenotation . $default reduce using rule 50 (Denotation) State 34 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 51 BasicDenotation: Primary.list . '=' 55 Primary.list: Primary.list . Primary 56 | Primary.list . ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 UNION shift, and go to state 16 USE shift, and go to state 17 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 '=' shift, and go to state 96 '(' shift, and go to state 27 '[' shift, and go to state 28 FuncSignature go to state 81 Primary go to state 97 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 98 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 35 53 Primary.list: Primary . '=' 62 Primary: Primary . TypeModifier 79 Selection: Primary . '$' ID Opt.SigClause '=' 80 | Primary . '$' STRING '=' 116 TypeModifier: . WithList '=' 117 | . ExportList '=' 118 WithList: . WITH Opt.Id '{' Opt.Declaration.list '}' '=' 119 | . WITH error 120 ExportList: . Start.ExportList Opt.Id '{' ExportElement.list '}' '=' 121 | . EXPORT error 122 | . HIDE error 123 Start.ExportList: . EXPORT '=' 124 | . HIDE '=' EXPORT shift, and go to state 99 HIDE shift, and go to state 100 WITH shift, and go to state 101 '=' shift, and go to state 102 '$' shift, and go to state 103 TypeModifier go to state 104 WithList go to state 105 ExportList go to state 106 Start.ExportList go to state 107 State 36 57 Primary: FuncConstruction . $default reduce using rule 57 (Primary) State 37 74 FuncConstruction: IncompleteFuncSignature . '{' Denotation.seq '}' '=' 75 | IncompleteFuncSignature . '{' EXTERN QSTRING '}' '=' '{' shift, and go to state 108 State 38 58 Primary: Selection . $default reduce using rule 58 (Primary) State 39 61 Primary: TypeConstruction . $default reduce using rule 61 (Primary) State 40 54 Primary.list: ArgList . $default reduce using rule 54 (Primary.list) State 41 83 TypeConstruction: Enumeration . '=' '=' shift, and go to state 109 State 42 85 TypeConstruction: Extension . '=' '=' shift, and go to state 110 State 43 86 TypeConstruction: Product . '=' '=' shift, and go to state 111 State 44 84 TypeConstruction: Record . '=' '=' shift, and go to state 112 State 45 87 TypeConstruction: Union . '=' '=' shift, and go to state 113 State 46 81 Selection: ID . Opt.SigClause '=' 133 Opt.SigClause: . LEFT_ANGLE_BRACKET Signature RIGHT_ANGLE_BRACKET '=' 134 | . '=' LEFT_ANGLE_BRACKET shift, and go to state 114 '=' shift, and go to state 115 Opt.SigClause go to state 116 State 47 82 Selection: STRING . '=' '=' shift, and go to state 117 State 48 71 Denotation.seq: error . $default reduce using rule 71 (Denotation.seq) State 49 70 Denotation.seq: Denotation . '=' '=' shift, and go to state 118 State 50 5 Program: error $@2 Denotation.seq . [$end] 69 Denotation.seq: Denotation.seq . ';' Opt.Denotation '=' ';' shift, and go to state 119 $default reduce using rule 5 (Program) State 51 90 Guard: error . [RIGHT_ARROW] 142 GuardedDenotation.list: error . [FI, OD, '#'] RIGHT_ARROW reduce using rule 90 (Guard) $default reduce using rule 142 (GuardedDenotation.list) State 52 89 Guard: ELSE . '=' '=' shift, and go to state 120 State 53 88 Guard: Denotation . '=' 141 GuardedDenotation.list: Denotation . THEN Denotation.seq Opt.ElseList THEN shift, and go to state 121 '=' shift, and go to state 122 State 54 143 GuardedDenotation: Guard . RIGHT_ARROW Denotation.seq '=' RIGHT_ARROW shift, and go to state 123 State 55 65 Primary: DO GuardedDenotation.list . OD '=' 140 GuardedDenotation.list: GuardedDenotation.list . '#' GuardedDenotation '=' OD shift, and go to state 124 '#' shift, and go to state 125 State 56 139 GuardedDenotation.list: GuardedDenotation . '=' '=' shift, and go to state 126 State 57 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 103 Enumeration: ENUM '{' . Id.list '}' '=' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 Id.list go to state 127 ID go to state 69 State 58 32 Opt.InLine: '=' . $default reduce using rule 32 (Opt.InLine) State 59 31 Opt.InLine: '(' . ID QSTRING ')' 33 Special: '(' . ID ID UQSTRING ')' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 ID go to state 128 State 60 35 FuncSignature: FUNC Opt.InLine . '[' Opt.Parameter.list ']' Signature '=' 78 IncompleteFuncSignature: FUNC Opt.InLine . '[' Opt.Parameter.list ']' '=' '[' shift, and go to state 129 State 61 31 Opt.InLine: . '(' ID QSTRING ')' 32 | . '=' 34 FuncSignature: FUNC Special . Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 77 IncompleteFuncSignature: FUNC Special . Opt.InLine '[' Opt.Parameter.list ']' '=' '=' shift, and go to state 58 '(' shift, and go to state 130 Opt.InLine go to state 131 State 62 64 Primary: IF GuardedDenotation.list . FI '=' 140 GuardedDenotation.list: GuardedDenotation.list . '#' GuardedDenotation '=' FI shift, and go to state 132 '#' shift, and go to state 125 State 63 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 104 | EXTEND '{' . Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 133 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 64 100 Opt.Declarations: error . $default reduce using rule 100 (Opt.Declarations) State 65 99 Opt.Declarations: '=' . $default reduce using rule 99 (Opt.Declarations) State 66 9 Opt.Colon: . COLON 10 | . %empty [FUNC, TYPE, VAL, VAR, WORDID, OPID, SIGNATURE] 16 Id.list: Id.list . ',' ID '=' 97 Opt.Declarations: Id.list . Opt.ColonSignature EQUALS_EQUALS Denotation '=' 98 | Id.list . Opt.ColonSignature EQUALS_EQUALS_EQUALS Denotation '=' 101 Opt.ColonSignature: . Opt.Colon Signature '=' 102 | . '=' COLON shift, and go to state 134 '=' shift, and go to state 135 ',' shift, and go to state 136 $default reduce using rule 10 (Opt.Colon) Opt.Colon go to state 137 Opt.ColonSignature go to state 138 State 67 66 Primary: LET Opt.Declaration.list . IN Denotation.seq NI '=' 96 Opt.Declaration.list: Opt.Declaration.list . ';' Opt.Declarations '=' IN shift, and go to state 139 ';' shift, and go to state 140 State 68 95 Opt.Declaration.list: Opt.Declarations . '=' '=' shift, and go to state 141 State 69 15 Id.list: ID . '=' '=' shift, and go to state 142 State 70 108 Record: RECORD error . $default reduce using rule 108 (Record) State 71 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 107 Record: RECORD '{' . Opt.RecordElement.list '}' '=' 111 Opt.RecordElement.list: . Opt.RecordElements '=' 112 | . Opt.RecordElement.list ';' Opt.RecordElements '=' 113 Opt.RecordElements: . RecordElements '=' 114 | . '=' 115 RecordElements: . Id.list Opt.Colon Denotation '=' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 143 Id.list go to state 144 Opt.RecordElement.list go to state 145 Opt.RecordElements go to state 146 RecordElements go to state 147 ID go to state 69 State 72 41 Opt.Id: '=' . $default reduce using rule 41 (Opt.Id) State 73 23 ManifestSignature: TYPE '(' . Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | TYPE '(' . Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | TYPE '(' . Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | TYPE '(' . Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | TYPE '(' . Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 29 Opt.Simple: . ID '=' 30 | . '=' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 148 Opt.Simple go to state 149 ID go to state 150 State 74 28 ManifestSignature: TYPE Opt.Id . '{' Opt.TypeSignatureComponent.list '}' '=' '{' shift, and go to state 151 State 75 40 Opt.Id: ID . '=' '=' shift, and go to state 152 State 76 110 Union: UNION error . $default reduce using rule 110 (Union) State 77 109 Union: UNION Opt.Id . '{' Opt.Parameter.list '}' '=' '{' shift, and go to state 153 State 78 94 Opt.Denotation.list: '=' . $default reduce using rule 94 (Opt.Denotation.list) State 79 92 Opt.Denotation.list: Denotation . '=' 93 | Denotation . ',' Opt.Denotation.list '=' '=' shift, and go to state 154 ',' shift, and go to state 155 State 80 67 Primary: USE Opt.Denotation.list . IN Denotation.seq NI '=' IN shift, and go to state 156 State 81 76 IncompleteFuncSignature: FuncSignature . '=' '=' shift, and go to state 157 State 82 21 ManifestSignature: VAL BasicDenotation . '=' '=' shift, and go to state 158 State 83 20 ManifestSignature: VAR BasicDenotation . '=' '=' shift, and go to state 159 State 84 144 ID: WORDID '=' . $default reduce using rule 144 (ID) State 85 145 ID: OPID '=' . $default reduce using rule 145 (ID) State 86 106 Product: PROD error . $default reduce using rule 106 (Product) State 87 105 Product: PROD Opt.Id . '{' Opt.Parameter.list '}' '=' '{' shift, and go to state 160 State 88 146 STRING: QSTRING '=' . $default reduce using rule 146 (STRING) State 89 147 STRING: UQSTRING '=' . $default reduce using rule 147 (STRING) State 90 68 Primary: EXTERN '{' . QSTRING '}' '=' QSTRING shift, and go to state 161 State 91 63 Primary: '(' Denotation.seq . ')' 69 Denotation.seq: Denotation.seq . ';' Opt.Denotation '=' ';' shift, and go to state 119 ')' shift, and go to state 162 State 92 91 ArgList: '[' Opt.Denotation.list . ']' '=' ']' shift, and go to state 163 State 93 52 BasicDenotation: '\002' '=' . $default reduce using rule 52 (BasicDenotation) State 94 22 ManifestSignature: FuncSignature '=' . [THEN, '=', ',', '}'] 76 IncompleteFuncSignature: FuncSignature '=' . ['{'] '{' reduce using rule 76 (IncompleteFuncSignature) $default reduce using rule 22 (ManifestSignature) State 95 2 Program: @1 Denotation '=' . $default reduce using rule 2 (Program) State 96 51 BasicDenotation: Primary.list '=' . $default reduce using rule 51 (BasicDenotation) State 97 55 Primary.list: Primary.list Primary . [CAND, COR, DO, ENUM, FUNC, IF, EXTEND, LET, RECORD, UNION, USE, WORDID, OPID, PROD, QSTRING, UQSTRING, EXTERN, '=', '(', '['] 62 Primary: Primary . TypeModifier 79 Selection: Primary . '$' ID Opt.SigClause '=' 80 | Primary . '$' STRING '=' 116 TypeModifier: . WithList '=' 117 | . ExportList '=' 118 WithList: . WITH Opt.Id '{' Opt.Declaration.list '}' '=' 119 | . WITH error 120 ExportList: . Start.ExportList Opt.Id '{' ExportElement.list '}' '=' 121 | . EXPORT error 122 | . HIDE error 123 Start.ExportList: . EXPORT '=' 124 | . HIDE '=' EXPORT shift, and go to state 99 HIDE shift, and go to state 100 WITH shift, and go to state 101 '$' shift, and go to state 103 $default reduce using rule 55 (Primary.list) TypeModifier go to state 104 WithList go to state 105 ExportList go to state 106 Start.ExportList go to state 107 State 98 56 Primary.list: Primary.list ArgList . $default reduce using rule 56 (Primary.list) State 99 121 ExportList: EXPORT . error 123 Start.ExportList: EXPORT . '=' error shift, and go to state 164 '=' shift, and go to state 165 State 100 122 ExportList: HIDE . error 124 Start.ExportList: HIDE . '=' error shift, and go to state 166 '=' shift, and go to state 167 State 101 40 Opt.Id: . ID '=' 41 | . '=' 118 WithList: WITH . Opt.Id '{' Opt.Declaration.list '}' '=' 119 | WITH . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 168 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 72 Opt.Id go to state 169 ID go to state 75 State 102 53 Primary.list: Primary '=' . $default reduce using rule 53 (Primary.list) State 103 79 Selection: Primary '$' . ID Opt.SigClause '=' 80 | Primary '$' . STRING '=' 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 ID go to state 170 STRING go to state 171 State 104 62 Primary: Primary TypeModifier . $default reduce using rule 62 (Primary) State 105 116 TypeModifier: WithList . '=' '=' shift, and go to state 172 State 106 117 TypeModifier: ExportList . '=' '=' shift, and go to state 173 State 107 40 Opt.Id: . ID '=' 41 | . '=' 120 ExportList: Start.ExportList . Opt.Id '{' ExportElement.list '}' '=' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 72 Opt.Id go to state 174 ID go to state 75 State 108 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 69 Denotation.seq: . Denotation.seq ';' Opt.Denotation '=' 70 | . Denotation '=' 71 | . error 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 74 | IncompleteFuncSignature '{' . Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 75 | IncompleteFuncSignature '{' . EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' error shift, and go to state 48 CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 175 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 49 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 Denotation.seq go to state 176 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 109 83 TypeConstruction: Enumeration '=' . $default reduce using rule 83 (TypeConstruction) State 110 85 TypeConstruction: Extension '=' . $default reduce using rule 85 (TypeConstruction) State 111 86 TypeConstruction: Product '=' . $default reduce using rule 86 (TypeConstruction) State 112 84 TypeConstruction: Record '=' . $default reduce using rule 84 (TypeConstruction) State 113 87 TypeConstruction: Union '=' . $default reduce using rule 87 (TypeConstruction) State 114 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 133 Opt.SigClause: LEFT_ANGLE_BRACKET . Signature RIGHT_ANGLE_BRACKET '=' 144 ID: . WORDID '=' 145 | . OPID '=' FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 Signature go to state 178 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 181 State 115 134 Opt.SigClause: '=' . $default reduce using rule 134 (Opt.SigClause) State 116 81 Selection: ID Opt.SigClause . '=' '=' shift, and go to state 182 State 117 82 Selection: STRING '=' . $default reduce using rule 82 (Selection) State 118 70 Denotation.seq: Denotation '=' . $default reduce using rule 70 (Denotation.seq) State 119 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 69 Denotation.seq: Denotation.seq ';' . Opt.Denotation '=' 72 Opt.Denotation: . Denotation '=' 73 | . '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '=' shift, and go to state 183 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 184 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 Opt.Denotation go to state 185 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 120 89 Guard: ELSE '=' . $default reduce using rule 89 (Guard) State 121 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 69 Denotation.seq: . Denotation.seq ';' Opt.Denotation '=' 70 | . Denotation '=' 71 | . error 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 141 GuardedDenotation.list: Denotation THEN . Denotation.seq Opt.ElseList 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' error shift, and go to state 48 CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 49 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 Denotation.seq go to state 186 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 122 88 Guard: Denotation '=' . $default reduce using rule 88 (Guard) State 123 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 69 Denotation.seq: . Denotation.seq ';' Opt.Denotation '=' 70 | . Denotation '=' 71 | . error 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 143 GuardedDenotation: Guard RIGHT_ARROW . Denotation.seq '=' 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' error shift, and go to state 48 CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 49 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 Denotation.seq go to state 187 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 124 65 Primary: DO GuardedDenotation.list OD . '=' '=' shift, and go to state 188 State 125 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 88 Guard: . Denotation '=' 89 | . ELSE '=' 90 | . error 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 140 GuardedDenotation.list: GuardedDenotation.list '#' . GuardedDenotation '=' 143 GuardedDenotation: . Guard RIGHT_ARROW Denotation.seq '=' 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' error shift, and go to state 189 CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ELSE shift, and go to state 52 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 190 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 Guard go to state 54 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 GuardedDenotation go to state 191 ID go to state 46 STRING go to state 47 State 126 139 GuardedDenotation.list: GuardedDenotation '=' . $default reduce using rule 139 (GuardedDenotation.list) State 127 16 Id.list: Id.list . ',' ID '=' 103 Enumeration: ENUM '{' Id.list . '}' '=' ',' shift, and go to state 136 '}' shift, and go to state 192 State 128 31 Opt.InLine: '(' ID . QSTRING ')' 33 Special: '(' ID . ID UQSTRING ')' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 QSTRING shift, and go to state 193 ID go to state 194 State 129 6 Parameters: . Id.list Opt.Colon Signature '=' 7 | . Signature '=' 8 | . error 11 Opt.Parameters: . Parameters '=' 12 | . '=' 13 Opt.Parameter.list: . Opt.Parameters '=' 14 | . Opt.Parameter.list ';' Opt.Parameters '=' 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | FUNC Opt.InLine '[' . Opt.Parameter.list ']' Signature '=' 78 IncompleteFuncSignature: FUNC Opt.InLine '[' . Opt.Parameter.list ']' '=' 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 195 FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 '=' shift, and go to state 196 Parameters go to state 197 Opt.Parameters go to state 198 Opt.Parameter.list go to state 199 Id.list go to state 200 Signature go to state 201 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 202 State 130 31 Opt.InLine: '(' . ID QSTRING ')' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 ID go to state 203 State 131 34 FuncSignature: FUNC Special Opt.InLine . '[' Opt.Parameter.list ']' Signature '=' 77 IncompleteFuncSignature: FUNC Special Opt.InLine . '[' Opt.Parameter.list ']' '=' '[' shift, and go to state 204 State 132 64 Primary: IF GuardedDenotation.list FI . '=' '=' shift, and go to state 205 State 133 104 Extension: EXTEND '{' Denotation . '}' '=' '}' shift, and go to state 206 State 134 9 Opt.Colon: COLON . $default reduce using rule 9 (Opt.Colon) State 135 102 Opt.ColonSignature: '=' . $default reduce using rule 102 (Opt.ColonSignature) State 136 16 Id.list: Id.list ',' . ID '=' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 ID go to state 207 State 137 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 101 Opt.ColonSignature: Opt.Colon . Signature '=' 144 ID: . WORDID '=' 145 | . OPID '=' FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 Signature go to state 208 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 181 State 138 97 Opt.Declarations: Id.list Opt.ColonSignature . EQUALS_EQUALS Denotation '=' 98 | Id.list Opt.ColonSignature . EQUALS_EQUALS_EQUALS Denotation '=' EQUALS_EQUALS shift, and go to state 209 EQUALS_EQUALS_EQUALS shift, and go to state 210 State 139 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 66 | LET Opt.Declaration.list IN . Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 69 Denotation.seq: . Denotation.seq ';' Opt.Denotation '=' 70 | . Denotation '=' 71 | . error 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' error shift, and go to state 48 CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 49 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 Denotation.seq go to state 211 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 140 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 96 Opt.Declaration.list: Opt.Declaration.list ';' . Opt.Declarations '=' 97 Opt.Declarations: . Id.list Opt.ColonSignature EQUALS_EQUALS Denotation '=' 98 | . Id.list Opt.ColonSignature EQUALS_EQUALS_EQUALS Denotation '=' 99 | . '=' 100 | . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 64 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 65 Id.list go to state 66 Opt.Declarations go to state 212 ID go to state 69 State 141 95 Opt.Declaration.list: Opt.Declarations '=' . $default reduce using rule 95 (Opt.Declaration.list) State 142 15 Id.list: ID '=' . $default reduce using rule 15 (Id.list) State 143 114 Opt.RecordElements: '=' . $default reduce using rule 114 (Opt.RecordElements) State 144 9 Opt.Colon: . COLON 10 | . %empty [CAND, COR, DO, ENUM, FUNC, IF, EXTEND, LET, RECORD, TYPE, UNION, USE, VAL, VAR, WORDID, OPID, PROD, QSTRING, UQSTRING, EXTERN, SIGNATURE, '(', '[', '\002'] 16 Id.list: Id.list . ',' ID '=' 115 RecordElements: Id.list . Opt.Colon Denotation '=' COLON shift, and go to state 134 ',' shift, and go to state 136 $default reduce using rule 10 (Opt.Colon) Opt.Colon go to state 213 State 145 107 Record: RECORD '{' Opt.RecordElement.list . '}' '=' 112 Opt.RecordElement.list: Opt.RecordElement.list . ';' Opt.RecordElements '=' ';' shift, and go to state 214 '}' shift, and go to state 215 State 146 111 Opt.RecordElement.list: Opt.RecordElements . '=' '=' shift, and go to state 216 State 147 113 Opt.RecordElements: RecordElements . '=' '=' shift, and go to state 217 State 148 30 Opt.Simple: '=' . $default reduce using rule 30 (Opt.Simple) State 149 23 ManifestSignature: TYPE '(' Opt.Simple . CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | TYPE '(' Opt.Simple . CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | TYPE '(' Opt.Simple . CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | TYPE '(' Opt.Simple . CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | TYPE '(' Opt.Simple . ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' CONSTANTS shift, and go to state 218 ')' shift, and go to state 219 State 150 29 Opt.Simple: ID . '=' '=' shift, and go to state 220 State 151 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 28 ManifestSignature: TYPE Opt.Id '{' . Opt.TypeSignatureComponent.list '}' '=' 36 Opt.TypeSignatureComponents: . TypeSignatureComponents '=' 37 | . '=' 38 Opt.TypeSignatureComponent.list: . Opt.TypeSignatureComponents '=' 39 | . Opt.TypeSignatureComponent.list ';' Opt.TypeSignatureComponents '=' 42 TypeSignatureComponents: . Id.list Opt.Colon Signature '=' 43 | . Id.list Opt.Colon Opt.Readonly FIELD BasicDenotation '=' 44 | . ID '=' 45 | . CHARACTERS '=' 46 | . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 221 CHARACTERS shift, and go to state 222 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 223 Id.list go to state 224 Opt.TypeSignatureComponents go to state 225 Opt.TypeSignatureComponent.list go to state 226 TypeSignatureComponents go to state 227 ID go to state 228 State 152 40 Opt.Id: ID '=' . $default reduce using rule 40 (Opt.Id) State 153 6 Parameters: . Id.list Opt.Colon Signature '=' 7 | . Signature '=' 8 | . error 11 Opt.Parameters: . Parameters '=' 12 | . '=' 13 Opt.Parameter.list: . Opt.Parameters '=' 14 | . Opt.Parameter.list ';' Opt.Parameters '=' 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 109 Union: UNION Opt.Id '{' . Opt.Parameter.list '}' '=' 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 195 FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 '=' shift, and go to state 196 Parameters go to state 197 Opt.Parameters go to state 198 Opt.Parameter.list go to state 229 Id.list go to state 200 Signature go to state 201 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 202 State 154 92 Opt.Denotation.list: Denotation '=' . $default reduce using rule 92 (Opt.Denotation.list) State 155 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 92 Opt.Denotation.list: . Denotation '=' 93 | . Denotation ',' Opt.Denotation.list '=' 93 | Denotation ',' . Opt.Denotation.list '=' 94 | . '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '=' shift, and go to state 78 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 79 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Opt.Denotation.list go to state 230 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 156 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 67 | USE Opt.Denotation.list IN . Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 69 Denotation.seq: . Denotation.seq ';' Opt.Denotation '=' 70 | . Denotation '=' 71 | . error 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' error shift, and go to state 48 CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 49 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 Denotation.seq go to state 231 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 157 76 IncompleteFuncSignature: FuncSignature '=' . $default reduce using rule 76 (IncompleteFuncSignature) State 158 21 ManifestSignature: VAL BasicDenotation '=' . $default reduce using rule 21 (ManifestSignature) State 159 20 ManifestSignature: VAR BasicDenotation '=' . $default reduce using rule 20 (ManifestSignature) State 160 6 Parameters: . Id.list Opt.Colon Signature '=' 7 | . Signature '=' 8 | . error 11 Opt.Parameters: . Parameters '=' 12 | . '=' 13 Opt.Parameter.list: . Opt.Parameters '=' 14 | . Opt.Parameter.list ';' Opt.Parameters '=' 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 105 Product: PROD Opt.Id '{' . Opt.Parameter.list '}' '=' 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 195 FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 '=' shift, and go to state 196 Parameters go to state 197 Opt.Parameters go to state 198 Opt.Parameter.list go to state 232 Id.list go to state 200 Signature go to state 201 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 202 State 161 68 Primary: EXTERN '{' QSTRING . '}' '=' '}' shift, and go to state 233 State 162 63 Primary: '(' Denotation.seq ')' . $default reduce using rule 63 (Primary) State 163 91 ArgList: '[' Opt.Denotation.list ']' . '=' '=' shift, and go to state 234 State 164 121 ExportList: EXPORT error . $default reduce using rule 121 (ExportList) State 165 123 Start.ExportList: EXPORT '=' . $default reduce using rule 123 (Start.ExportList) State 166 122 ExportList: HIDE error . $default reduce using rule 122 (ExportList) State 167 124 Start.ExportList: HIDE '=' . $default reduce using rule 124 (Start.ExportList) State 168 119 WithList: WITH error . $default reduce using rule 119 (WithList) State 169 118 WithList: WITH Opt.Id . '{' Opt.Declaration.list '}' '=' '{' shift, and go to state 235 State 170 79 Selection: Primary '$' ID . Opt.SigClause '=' 133 Opt.SigClause: . LEFT_ANGLE_BRACKET Signature RIGHT_ANGLE_BRACKET '=' 134 | . '=' LEFT_ANGLE_BRACKET shift, and go to state 114 '=' shift, and go to state 115 Opt.SigClause go to state 236 State 171 80 Selection: Primary '$' STRING . '=' '=' shift, and go to state 237 State 172 116 TypeModifier: WithList '=' . $default reduce using rule 116 (TypeModifier) State 173 117 TypeModifier: ExportList '=' . $default reduce using rule 117 (TypeModifier) State 174 120 ExportList: Start.ExportList Opt.Id . '{' ExportElement.list '}' '=' '{' shift, and go to state 238 State 175 68 Primary: EXTERN . '{' QSTRING '}' '=' 75 FuncConstruction: IncompleteFuncSignature '{' EXTERN . QSTRING '}' '=' QSTRING shift, and go to state 239 '{' shift, and go to state 90 State 176 69 Denotation.seq: Denotation.seq . ';' Opt.Denotation '=' 74 FuncConstruction: IncompleteFuncSignature '{' Denotation.seq . '}' '=' ';' shift, and go to state 119 '}' shift, and go to state 240 State 177 31 Opt.InLine: . '(' ID QSTRING ')' 32 | . '=' 33 Special: . '(' ID ID UQSTRING ')' 34 FuncSignature: FUNC . Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | FUNC . Opt.InLine '[' Opt.Parameter.list ']' Signature '=' '=' shift, and go to state 58 '(' shift, and go to state 59 Opt.InLine go to state 241 Special go to state 242 State 178 133 Opt.SigClause: LEFT_ANGLE_BRACKET Signature . RIGHT_ANGLE_BRACKET '=' RIGHT_ANGLE_BRACKET shift, and go to state 243 State 179 18 Signature: ManifestSignature . $default reduce using rule 18 (Signature) State 180 22 ManifestSignature: FuncSignature . '=' '=' shift, and go to state 244 State 181 17 Signature: ID . $default reduce using rule 17 (Signature) State 182 81 Selection: ID Opt.SigClause '=' . $default reduce using rule 81 (Selection) State 183 73 Opt.Denotation: '=' . $default reduce using rule 73 (Opt.Denotation) State 184 72 Opt.Denotation: Denotation . '=' '=' shift, and go to state 245 State 185 69 Denotation.seq: Denotation.seq ';' Opt.Denotation . '=' '=' shift, and go to state 246 State 186 69 Denotation.seq: Denotation.seq . ';' Opt.Denotation '=' 135 Opt.ElseList: . ElseList 136 | . %empty [FI, OD, '#'] 137 ElseList: . ELSE Denotation.seq 138 | . ELSIF Denotation THEN Denotation.seq Opt.ElseList 141 GuardedDenotation.list: Denotation THEN Denotation.seq . Opt.ElseList ELSE shift, and go to state 247 ELSIF shift, and go to state 248 ';' shift, and go to state 119 $default reduce using rule 136 (Opt.ElseList) Opt.ElseList go to state 249 ElseList go to state 250 State 187 69 Denotation.seq: Denotation.seq . ';' Opt.Denotation '=' 143 GuardedDenotation: Guard RIGHT_ARROW Denotation.seq . '=' '=' shift, and go to state 251 ';' shift, and go to state 119 State 188 65 Primary: DO GuardedDenotation.list OD '=' . $default reduce using rule 65 (Primary) State 189 90 Guard: error . $default reduce using rule 90 (Guard) State 190 88 Guard: Denotation . '=' '=' shift, and go to state 122 State 191 140 GuardedDenotation.list: GuardedDenotation.list '#' GuardedDenotation . '=' '=' shift, and go to state 252 State 192 103 Enumeration: ENUM '{' Id.list '}' . '=' '=' shift, and go to state 253 State 193 31 Opt.InLine: '(' ID QSTRING . ')' ')' shift, and go to state 254 State 194 33 Special: '(' ID ID . UQSTRING ')' UQSTRING shift, and go to state 255 State 195 8 Parameters: error . $default reduce using rule 8 (Parameters) State 196 12 Opt.Parameters: '=' . $default reduce using rule 12 (Opt.Parameters) State 197 11 Opt.Parameters: Parameters . '=' '=' shift, and go to state 256 State 198 13 Opt.Parameter.list: Opt.Parameters . '=' '=' shift, and go to state 257 State 199 14 Opt.Parameter.list: Opt.Parameter.list . ';' Opt.Parameters '=' 35 FuncSignature: FUNC Opt.InLine '[' Opt.Parameter.list . ']' Signature '=' 78 IncompleteFuncSignature: FUNC Opt.InLine '[' Opt.Parameter.list . ']' '=' ';' shift, and go to state 258 ']' shift, and go to state 259 State 200 6 Parameters: Id.list . Opt.Colon Signature '=' 9 Opt.Colon: . COLON 10 | . %empty [FUNC, TYPE, VAL, VAR, WORDID, OPID, SIGNATURE] 16 Id.list: Id.list . ',' ID '=' COLON shift, and go to state 134 ',' shift, and go to state 136 $default reduce using rule 10 (Opt.Colon) Opt.Colon go to state 260 State 201 7 Parameters: Signature . '=' '=' shift, and go to state 261 State 202 15 Id.list: ID . '=' 17 Signature: ID . ['='] '=' shift, and go to state 142 '=' [reduce using rule 17 (Signature)] State 203 31 Opt.InLine: '(' ID . QSTRING ')' QSTRING shift, and go to state 193 State 204 6 Parameters: . Id.list Opt.Colon Signature '=' 7 | . Signature '=' 8 | . error 11 Opt.Parameters: . Parameters '=' 12 | . '=' 13 Opt.Parameter.list: . Opt.Parameters '=' 14 | . Opt.Parameter.list ';' Opt.Parameters '=' 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 34 | FUNC Special Opt.InLine '[' . Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 77 IncompleteFuncSignature: FUNC Special Opt.InLine '[' . Opt.Parameter.list ']' '=' 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 195 FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 '=' shift, and go to state 196 Parameters go to state 197 Opt.Parameters go to state 198 Opt.Parameter.list go to state 262 Id.list go to state 200 Signature go to state 201 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 202 State 205 64 Primary: IF GuardedDenotation.list FI '=' . $default reduce using rule 64 (Primary) State 206 104 Extension: EXTEND '{' Denotation '}' . '=' '=' shift, and go to state 263 State 207 16 Id.list: Id.list ',' ID . '=' '=' shift, and go to state 264 State 208 101 Opt.ColonSignature: Opt.Colon Signature . '=' '=' shift, and go to state 265 State 209 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 97 Opt.Declarations: Id.list Opt.ColonSignature EQUALS_EQUALS . Denotation '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 266 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 210 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 98 Opt.Declarations: Id.list Opt.ColonSignature EQUALS_EQUALS_EQUALS . Denotation '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 267 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 211 66 Primary: LET Opt.Declaration.list IN Denotation.seq . NI '=' 69 Denotation.seq: Denotation.seq . ';' Opt.Denotation '=' NI shift, and go to state 268 ';' shift, and go to state 119 State 212 96 Opt.Declaration.list: Opt.Declaration.list ';' Opt.Declarations . '=' '=' shift, and go to state 269 State 213 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 115 RecordElements: Id.list Opt.Colon . Denotation '=' 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 270 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 214 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 112 Opt.RecordElement.list: Opt.RecordElement.list ';' . Opt.RecordElements '=' 113 Opt.RecordElements: . RecordElements '=' 114 | . '=' 115 RecordElements: . Id.list Opt.Colon Denotation '=' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 143 Id.list go to state 144 Opt.RecordElements go to state 271 RecordElements go to state 147 ID go to state 69 State 215 107 Record: RECORD '{' Opt.RecordElement.list '}' . '=' '=' shift, and go to state 272 State 216 111 Opt.RecordElement.list: Opt.RecordElements '=' . $default reduce using rule 111 (Opt.RecordElement.list) State 217 113 Opt.RecordElements: RecordElements '=' . $default reduce using rule 113 (Opt.RecordElements) State 218 23 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS . QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | TYPE '(' Opt.Simple CONSTANTS . QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | TYPE '(' Opt.Simple CONSTANTS . QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | TYPE '(' Opt.Simple CONSTANTS . QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' QSTRING shift, and go to state 273 State 219 27 ManifestSignature: TYPE '(' Opt.Simple ')' . Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 40 Opt.Id: . ID '=' 41 | . '=' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 72 Opt.Id go to state 274 ID go to state 75 State 220 29 Opt.Simple: ID '=' . $default reduce using rule 29 (Opt.Simple) State 221 46 TypeSignatureComponents: error . $default reduce using rule 46 (TypeSignatureComponents) State 222 45 TypeSignatureComponents: CHARACTERS . '=' '=' shift, and go to state 275 State 223 37 Opt.TypeSignatureComponents: '=' . $default reduce using rule 37 (Opt.TypeSignatureComponents) State 224 9 Opt.Colon: . COLON 10 | . %empty [FUNC, READONLY, TYPE, VAL, VAR, WORDID, OPID, SIGNATURE, '='] 16 Id.list: Id.list . ',' ID '=' 42 TypeSignatureComponents: Id.list . Opt.Colon Signature '=' 43 | Id.list . Opt.Colon Opt.Readonly FIELD BasicDenotation '=' COLON shift, and go to state 134 ',' shift, and go to state 136 $default reduce using rule 10 (Opt.Colon) Opt.Colon go to state 276 State 225 38 Opt.TypeSignatureComponent.list: Opt.TypeSignatureComponents . '=' '=' shift, and go to state 277 State 226 28 ManifestSignature: TYPE Opt.Id '{' Opt.TypeSignatureComponent.list . '}' '=' 39 Opt.TypeSignatureComponent.list: Opt.TypeSignatureComponent.list . ';' Opt.TypeSignatureComponents '=' ';' shift, and go to state 278 '}' shift, and go to state 279 State 227 36 Opt.TypeSignatureComponents: TypeSignatureComponents . '=' '=' shift, and go to state 280 State 228 15 Id.list: ID . '=' 44 TypeSignatureComponents: ID . '=' '=' shift, and go to state 281 State 229 14 Opt.Parameter.list: Opt.Parameter.list . ';' Opt.Parameters '=' 109 Union: UNION Opt.Id '{' Opt.Parameter.list . '}' '=' ';' shift, and go to state 258 '}' shift, and go to state 282 State 230 93 Opt.Denotation.list: Denotation ',' Opt.Denotation.list . '=' '=' shift, and go to state 283 State 231 67 Primary: USE Opt.Denotation.list IN Denotation.seq . NI '=' 69 Denotation.seq: Denotation.seq . ';' Opt.Denotation '=' NI shift, and go to state 284 ';' shift, and go to state 119 State 232 14 Opt.Parameter.list: Opt.Parameter.list . ';' Opt.Parameters '=' 105 Product: PROD Opt.Id '{' Opt.Parameter.list . '}' '=' ';' shift, and go to state 258 '}' shift, and go to state 285 State 233 68 Primary: EXTERN '{' QSTRING '}' . '=' '=' shift, and go to state 286 State 234 91 ArgList: '[' Opt.Denotation.list ']' '=' . $default reduce using rule 91 (ArgList) State 235 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 95 Opt.Declaration.list: . Opt.Declarations '=' 96 | . Opt.Declaration.list ';' Opt.Declarations '=' 97 Opt.Declarations: . Id.list Opt.ColonSignature EQUALS_EQUALS Denotation '=' 98 | . Id.list Opt.ColonSignature EQUALS_EQUALS_EQUALS Denotation '=' 99 | . '=' 100 | . error 118 WithList: WITH Opt.Id '{' . Opt.Declaration.list '}' '=' 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 64 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 65 Id.list go to state 66 Opt.Declaration.list go to state 287 Opt.Declarations go to state 68 ID go to state 69 State 236 79 Selection: Primary '$' ID Opt.SigClause . '=' '=' shift, and go to state 288 State 237 80 Selection: Primary '$' STRING '=' . $default reduce using rule 80 (Selection) State 238 120 ExportList: Start.ExportList Opt.Id '{' . ExportElement.list '}' '=' 125 ExportElement.list: . ExportElement '=' 126 | . ExportElement ';' ExportElement.list '=' 127 | . '=' 128 ExportElement: . ID Opt.SigClause Opt.ExportList '=' 129 | . CONSTANTS '=' 130 | . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 289 CONSTANTS shift, and go to state 290 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 291 ExportElement.list go to state 292 ExportElement go to state 293 ID go to state 294 State 239 75 FuncConstruction: IncompleteFuncSignature '{' EXTERN QSTRING . '}' '=' '}' shift, and go to state 295 State 240 74 FuncConstruction: IncompleteFuncSignature '{' Denotation.seq '}' . '=' '=' shift, and go to state 296 State 241 35 FuncSignature: FUNC Opt.InLine . '[' Opt.Parameter.list ']' Signature '=' '[' shift, and go to state 297 State 242 31 Opt.InLine: . '(' ID QSTRING ')' 32 | . '=' 34 FuncSignature: FUNC Special . Opt.InLine '[' Opt.Parameter.list ']' Signature '=' '=' shift, and go to state 58 '(' shift, and go to state 130 Opt.InLine go to state 298 State 243 133 Opt.SigClause: LEFT_ANGLE_BRACKET Signature RIGHT_ANGLE_BRACKET . '=' '=' shift, and go to state 299 State 244 22 ManifestSignature: FuncSignature '=' . $default reduce using rule 22 (ManifestSignature) State 245 72 Opt.Denotation: Denotation '=' . $default reduce using rule 72 (Opt.Denotation) State 246 69 Denotation.seq: Denotation.seq ';' Opt.Denotation '=' . $default reduce using rule 69 (Denotation.seq) State 247 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 69 Denotation.seq: . Denotation.seq ';' Opt.Denotation '=' 70 | . Denotation '=' 71 | . error 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 137 ElseList: ELSE . Denotation.seq 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' error shift, and go to state 48 CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 49 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 Denotation.seq go to state 300 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 248 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 138 ElseList: ELSIF . Denotation THEN Denotation.seq Opt.ElseList 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 301 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 249 141 GuardedDenotation.list: Denotation THEN Denotation.seq Opt.ElseList . $default reduce using rule 141 (GuardedDenotation.list) State 250 135 Opt.ElseList: ElseList . $default reduce using rule 135 (Opt.ElseList) State 251 143 GuardedDenotation: Guard RIGHT_ARROW Denotation.seq '=' . $default reduce using rule 143 (GuardedDenotation) State 252 140 GuardedDenotation.list: GuardedDenotation.list '#' GuardedDenotation '=' . $default reduce using rule 140 (GuardedDenotation.list) State 253 103 Enumeration: ENUM '{' Id.list '}' '=' . $default reduce using rule 103 (Enumeration) State 254 31 Opt.InLine: '(' ID QSTRING ')' . $default reduce using rule 31 (Opt.InLine) State 255 33 Special: '(' ID ID UQSTRING . ')' ')' shift, and go to state 302 State 256 11 Opt.Parameters: Parameters '=' . $default reduce using rule 11 (Opt.Parameters) State 257 13 Opt.Parameter.list: Opt.Parameters '=' . $default reduce using rule 13 (Opt.Parameter.list) State 258 6 Parameters: . Id.list Opt.Colon Signature '=' 7 | . Signature '=' 8 | . error 11 Opt.Parameters: . Parameters '=' 12 | . '=' 14 Opt.Parameter.list: Opt.Parameter.list ';' . Opt.Parameters '=' 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 195 FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 '=' shift, and go to state 196 Parameters go to state 197 Opt.Parameters go to state 303 Id.list go to state 200 Signature go to state 201 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 202 State 259 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | FUNC Opt.InLine '[' Opt.Parameter.list ']' . Signature '=' 78 IncompleteFuncSignature: FUNC Opt.InLine '[' Opt.Parameter.list ']' . '=' 144 ID: . WORDID '=' 145 | . OPID '=' FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 '=' shift, and go to state 304 Signature go to state 305 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 181 State 260 6 Parameters: Id.list Opt.Colon . Signature '=' 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 144 ID: . WORDID '=' 145 | . OPID '=' FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 Signature go to state 306 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 181 State 261 7 Parameters: Signature '=' . $default reduce using rule 7 (Parameters) State 262 14 Opt.Parameter.list: Opt.Parameter.list . ';' Opt.Parameters '=' 34 FuncSignature: FUNC Special Opt.InLine '[' Opt.Parameter.list . ']' Signature '=' 77 IncompleteFuncSignature: FUNC Special Opt.InLine '[' Opt.Parameter.list . ']' '=' ';' shift, and go to state 258 ']' shift, and go to state 307 State 263 104 Extension: EXTEND '{' Denotation '}' '=' . $default reduce using rule 104 (Extension) State 264 16 Id.list: Id.list ',' ID '=' . $default reduce using rule 16 (Id.list) State 265 101 Opt.ColonSignature: Opt.Colon Signature '=' . $default reduce using rule 101 (Opt.ColonSignature) State 266 97 Opt.Declarations: Id.list Opt.ColonSignature EQUALS_EQUALS Denotation . '=' '=' shift, and go to state 308 State 267 98 Opt.Declarations: Id.list Opt.ColonSignature EQUALS_EQUALS_EQUALS Denotation . '=' '=' shift, and go to state 309 State 268 66 Primary: LET Opt.Declaration.list IN Denotation.seq NI . '=' '=' shift, and go to state 310 State 269 96 Opt.Declaration.list: Opt.Declaration.list ';' Opt.Declarations '=' . $default reduce using rule 96 (Opt.Declaration.list) State 270 115 RecordElements: Id.list Opt.Colon Denotation . '=' '=' shift, and go to state 311 State 271 112 Opt.RecordElement.list: Opt.RecordElement.list ';' Opt.RecordElements . '=' '=' shift, and go to state 312 State 272 107 Record: RECORD '{' Opt.RecordElement.list '}' '=' . $default reduce using rule 107 (Record) State 273 23 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING . QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | TYPE '(' Opt.Simple CONSTANTS QSTRING . QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | TYPE '(' Opt.Simple CONSTANTS QSTRING . QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | TYPE '(' Opt.Simple CONSTANTS QSTRING . ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' QSTRING shift, and go to state 313 ')' shift, and go to state 314 State 274 27 ManifestSignature: TYPE '(' Opt.Simple ')' Opt.Id . '{' Opt.TypeSignatureComponent.list '}' '=' '{' shift, and go to state 315 State 275 45 TypeSignatureComponents: CHARACTERS '=' . $default reduce using rule 45 (TypeSignatureComponents) State 276 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 42 TypeSignatureComponents: Id.list Opt.Colon . Signature '=' 43 | Id.list Opt.Colon . Opt.Readonly FIELD BasicDenotation '=' 47 Opt.Readonly: . READONLY '=' 48 | . '=' 144 ID: . WORDID '=' 145 | . OPID '=' FUNC shift, and go to state 177 READONLY shift, and go to state 316 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 '=' shift, and go to state 317 Signature go to state 318 ManifestSignature go to state 179 FuncSignature go to state 180 Opt.Readonly go to state 319 ID go to state 181 State 277 38 Opt.TypeSignatureComponent.list: Opt.TypeSignatureComponents '=' . $default reduce using rule 38 (Opt.TypeSignatureComponent.list) State 278 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 36 Opt.TypeSignatureComponents: . TypeSignatureComponents '=' 37 | . '=' 39 Opt.TypeSignatureComponent.list: Opt.TypeSignatureComponent.list ';' . Opt.TypeSignatureComponents '=' 42 TypeSignatureComponents: . Id.list Opt.Colon Signature '=' 43 | . Id.list Opt.Colon Opt.Readonly FIELD BasicDenotation '=' 44 | . ID '=' 45 | . CHARACTERS '=' 46 | . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 221 CHARACTERS shift, and go to state 222 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 223 Id.list go to state 224 Opt.TypeSignatureComponents go to state 320 TypeSignatureComponents go to state 227 ID go to state 228 State 279 28 ManifestSignature: TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' . '=' '=' shift, and go to state 321 State 280 36 Opt.TypeSignatureComponents: TypeSignatureComponents '=' . $default reduce using rule 36 (Opt.TypeSignatureComponents) State 281 15 Id.list: ID '=' . [FUNC, READONLY, TYPE, VAL, VAR, COLON, WORDID, OPID, SIGNATURE, '=', ','] 44 TypeSignatureComponents: ID '=' . ['='] '=' reduce using rule 15 (Id.list) '=' [reduce using rule 44 (TypeSignatureComponents)] $default reduce using rule 15 (Id.list) State 282 109 Union: UNION Opt.Id '{' Opt.Parameter.list '}' . '=' '=' shift, and go to state 322 State 283 93 Opt.Denotation.list: Denotation ',' Opt.Denotation.list '=' . $default reduce using rule 93 (Opt.Denotation.list) State 284 67 Primary: USE Opt.Denotation.list IN Denotation.seq NI . '=' '=' shift, and go to state 323 State 285 105 Product: PROD Opt.Id '{' Opt.Parameter.list '}' . '=' '=' shift, and go to state 324 State 286 68 Primary: EXTERN '{' QSTRING '}' '=' . $default reduce using rule 68 (Primary) State 287 96 Opt.Declaration.list: Opt.Declaration.list . ';' Opt.Declarations '=' 118 WithList: WITH Opt.Id '{' Opt.Declaration.list . '}' '=' ';' shift, and go to state 140 '}' shift, and go to state 325 State 288 79 Selection: Primary '$' ID Opt.SigClause '=' . $default reduce using rule 79 (Selection) State 289 130 ExportElement: error . $default reduce using rule 130 (ExportElement) State 290 129 ExportElement: CONSTANTS . '=' '=' shift, and go to state 326 State 291 127 ExportElement.list: '=' . $default reduce using rule 127 (ExportElement.list) State 292 120 ExportList: Start.ExportList Opt.Id '{' ExportElement.list . '}' '=' '}' shift, and go to state 327 State 293 125 ExportElement.list: ExportElement . '=' 126 | ExportElement . ';' ExportElement.list '=' '=' shift, and go to state 328 ';' shift, and go to state 329 State 294 128 ExportElement: ID . Opt.SigClause Opt.ExportList '=' 133 Opt.SigClause: . LEFT_ANGLE_BRACKET Signature RIGHT_ANGLE_BRACKET '=' 134 | . '=' LEFT_ANGLE_BRACKET shift, and go to state 114 '=' shift, and go to state 115 Opt.SigClause go to state 330 State 295 75 FuncConstruction: IncompleteFuncSignature '{' EXTERN QSTRING '}' . '=' '=' shift, and go to state 331 State 296 74 FuncConstruction: IncompleteFuncSignature '{' Denotation.seq '}' '=' . $default reduce using rule 74 (FuncConstruction) State 297 6 Parameters: . Id.list Opt.Colon Signature '=' 7 | . Signature '=' 8 | . error 11 Opt.Parameters: . Parameters '=' 12 | . '=' 13 Opt.Parameter.list: . Opt.Parameters '=' 14 | . Opt.Parameter.list ';' Opt.Parameters '=' 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | FUNC Opt.InLine '[' . Opt.Parameter.list ']' Signature '=' 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 195 FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 '=' shift, and go to state 196 Parameters go to state 197 Opt.Parameters go to state 198 Opt.Parameter.list go to state 332 Id.list go to state 200 Signature go to state 201 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 202 State 298 34 FuncSignature: FUNC Special Opt.InLine . '[' Opt.Parameter.list ']' Signature '=' '[' shift, and go to state 333 State 299 133 Opt.SigClause: LEFT_ANGLE_BRACKET Signature RIGHT_ANGLE_BRACKET '=' . $default reduce using rule 133 (Opt.SigClause) State 300 69 Denotation.seq: Denotation.seq . ';' Opt.Denotation '=' 137 ElseList: ELSE Denotation.seq . [FI, OD, '#'] ';' shift, and go to state 119 $default reduce using rule 137 (ElseList) State 301 138 ElseList: ELSIF Denotation . THEN Denotation.seq Opt.ElseList THEN shift, and go to state 334 State 302 33 Special: '(' ID ID UQSTRING ')' . $default reduce using rule 33 (Special) State 303 14 Opt.Parameter.list: Opt.Parameter.list ';' Opt.Parameters . '=' '=' shift, and go to state 335 State 304 78 IncompleteFuncSignature: FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' . $default reduce using rule 78 (IncompleteFuncSignature) State 305 35 FuncSignature: FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature . '=' '=' shift, and go to state 336 State 306 6 Parameters: Id.list Opt.Colon Signature . '=' '=' shift, and go to state 337 State 307 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 34 | FUNC Special Opt.InLine '[' Opt.Parameter.list ']' . Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 77 IncompleteFuncSignature: FUNC Special Opt.InLine '[' Opt.Parameter.list ']' . '=' 144 ID: . WORDID '=' 145 | . OPID '=' FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 '=' shift, and go to state 338 Signature go to state 339 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 181 State 308 97 Opt.Declarations: Id.list Opt.ColonSignature EQUALS_EQUALS Denotation '=' . $default reduce using rule 97 (Opt.Declarations) State 309 98 Opt.Declarations: Id.list Opt.ColonSignature EQUALS_EQUALS_EQUALS Denotation '=' . $default reduce using rule 98 (Opt.Declarations) State 310 66 Primary: LET Opt.Declaration.list IN Denotation.seq NI '=' . $default reduce using rule 66 (Primary) State 311 115 RecordElements: Id.list Opt.Colon Denotation '=' . $default reduce using rule 115 (RecordElements) State 312 112 Opt.RecordElement.list: Opt.RecordElement.list ';' Opt.RecordElements '=' . $default reduce using rule 112 (Opt.RecordElement.list) State 313 23 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING . QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING . QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING . QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' QSTRING shift, and go to state 340 State 314 26 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING ')' . Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 40 Opt.Id: . ID '=' 41 | . '=' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 72 Opt.Id go to state 341 ID go to state 75 State 315 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 27 ManifestSignature: TYPE '(' Opt.Simple ')' Opt.Id '{' . Opt.TypeSignatureComponent.list '}' '=' 36 Opt.TypeSignatureComponents: . TypeSignatureComponents '=' 37 | . '=' 38 Opt.TypeSignatureComponent.list: . Opt.TypeSignatureComponents '=' 39 | . Opt.TypeSignatureComponent.list ';' Opt.TypeSignatureComponents '=' 42 TypeSignatureComponents: . Id.list Opt.Colon Signature '=' 43 | . Id.list Opt.Colon Opt.Readonly FIELD BasicDenotation '=' 44 | . ID '=' 45 | . CHARACTERS '=' 46 | . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 221 CHARACTERS shift, and go to state 222 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 223 Id.list go to state 224 Opt.TypeSignatureComponents go to state 225 Opt.TypeSignatureComponent.list go to state 342 TypeSignatureComponents go to state 227 ID go to state 228 State 316 47 Opt.Readonly: READONLY . '=' '=' shift, and go to state 343 State 317 48 Opt.Readonly: '=' . $default reduce using rule 48 (Opt.Readonly) State 318 42 TypeSignatureComponents: Id.list Opt.Colon Signature . '=' '=' shift, and go to state 344 State 319 43 TypeSignatureComponents: Id.list Opt.Colon Opt.Readonly . FIELD BasicDenotation '=' FIELD shift, and go to state 345 State 320 39 Opt.TypeSignatureComponent.list: Opt.TypeSignatureComponent.list ';' Opt.TypeSignatureComponents . '=' '=' shift, and go to state 346 State 321 28 ManifestSignature: TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' . $default reduce using rule 28 (ManifestSignature) State 322 109 Union: UNION Opt.Id '{' Opt.Parameter.list '}' '=' . $default reduce using rule 109 (Union) State 323 67 Primary: USE Opt.Denotation.list IN Denotation.seq NI '=' . $default reduce using rule 67 (Primary) State 324 105 Product: PROD Opt.Id '{' Opt.Parameter.list '}' '=' . $default reduce using rule 105 (Product) State 325 118 WithList: WITH Opt.Id '{' Opt.Declaration.list '}' . '=' '=' shift, and go to state 347 State 326 129 ExportElement: CONSTANTS '=' . $default reduce using rule 129 (ExportElement) State 327 120 ExportList: Start.ExportList Opt.Id '{' ExportElement.list '}' . '=' '=' shift, and go to state 348 State 328 125 ExportElement.list: ExportElement '=' . $default reduce using rule 125 (ExportElement.list) State 329 125 ExportElement.list: . ExportElement '=' 126 | . ExportElement ';' ExportElement.list '=' 126 | ExportElement ';' . ExportElement.list '=' 127 | . '=' 128 ExportElement: . ID Opt.SigClause Opt.ExportList '=' 129 | . CONSTANTS '=' 130 | . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 289 CONSTANTS shift, and go to state 290 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 291 ExportElement.list go to state 349 ExportElement go to state 293 ID go to state 294 State 330 120 ExportList: . Start.ExportList Opt.Id '{' ExportElement.list '}' '=' 121 | . EXPORT error 122 | . HIDE error 123 Start.ExportList: . EXPORT '=' 124 | . HIDE '=' 128 ExportElement: ID Opt.SigClause . Opt.ExportList '=' 131 Opt.ExportList: . ExportList '=' 132 | . '=' EXPORT shift, and go to state 99 HIDE shift, and go to state 100 '=' shift, and go to state 350 ExportList go to state 351 Start.ExportList go to state 107 Opt.ExportList go to state 352 State 331 75 FuncConstruction: IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' . $default reduce using rule 75 (FuncConstruction) State 332 14 Opt.Parameter.list: Opt.Parameter.list . ';' Opt.Parameters '=' 35 FuncSignature: FUNC Opt.InLine '[' Opt.Parameter.list . ']' Signature '=' ';' shift, and go to state 258 ']' shift, and go to state 353 State 333 6 Parameters: . Id.list Opt.Colon Signature '=' 7 | . Signature '=' 8 | . error 11 Opt.Parameters: . Parameters '=' 12 | . '=' 13 Opt.Parameter.list: . Opt.Parameters '=' 14 | . Opt.Parameter.list ';' Opt.Parameters '=' 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 34 | FUNC Special Opt.InLine '[' . Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 195 FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 '=' shift, and go to state 196 Parameters go to state 197 Opt.Parameters go to state 198 Opt.Parameter.list go to state 354 Id.list go to state 200 Signature go to state 201 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 202 State 334 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 49 Denotation: . ManifestSignature 50 | . BasicDenotation 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 69 Denotation.seq: . Denotation.seq ';' Opt.Denotation '=' 70 | . Denotation '=' 71 | . error 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 138 ElseList: ELSIF Denotation THEN . Denotation.seq Opt.ElseList 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' error shift, and go to state 48 CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 TYPE shift, and go to state 15 UNION shift, and go to state 16 USE shift, and go to state 17 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 SIGNATURE shift, and go to state 26 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 ManifestSignature go to state 30 FuncSignature go to state 31 Denotation go to state 49 BasicDenotation go to state 33 Primary.list go to state 34 Primary go to state 35 Denotation.seq go to state 355 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 335 14 Opt.Parameter.list: Opt.Parameter.list ';' Opt.Parameters '=' . $default reduce using rule 14 (Opt.Parameter.list) State 336 35 FuncSignature: FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' . $default reduce using rule 35 (FuncSignature) State 337 6 Parameters: Id.list Opt.Colon Signature '=' . $default reduce using rule 6 (Parameters) State 338 77 IncompleteFuncSignature: FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' . $default reduce using rule 77 (IncompleteFuncSignature) State 339 34 FuncSignature: FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature . '=' '=' shift, and go to state 356 State 340 23 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING . UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING . UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING . ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' UQSTRING shift, and go to state 357 ')' shift, and go to state 358 State 341 26 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id . '{' Opt.TypeSignatureComponent.list '}' '=' '{' shift, and go to state 359 State 342 27 ManifestSignature: TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list . '}' '=' 39 Opt.TypeSignatureComponent.list: Opt.TypeSignatureComponent.list . ';' Opt.TypeSignatureComponents '=' ';' shift, and go to state 278 '}' shift, and go to state 360 State 343 47 Opt.Readonly: READONLY '=' . $default reduce using rule 47 (Opt.Readonly) State 344 42 TypeSignatureComponents: Id.list Opt.Colon Signature '=' . $default reduce using rule 42 (TypeSignatureComponents) State 345 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 43 TypeSignatureComponents: Id.list Opt.Colon Opt.Readonly FIELD . BasicDenotation '=' 51 BasicDenotation: . Primary.list '=' 52 | . '\002' '=' 53 Primary.list: . Primary '=' 54 | . ArgList 55 | . Primary.list Primary 56 | . Primary.list ArgList 57 Primary: . FuncConstruction 58 | . Selection 59 | . CAND 60 | . COR 61 | . TypeConstruction 62 | . Primary TypeModifier 63 | . '(' Denotation.seq ')' 64 | . IF GuardedDenotation.list FI '=' 65 | . DO GuardedDenotation.list OD '=' 66 | . LET Opt.Declaration.list IN Denotation.seq NI '=' 67 | . USE Opt.Denotation.list IN Denotation.seq NI '=' 68 | . EXTERN '{' QSTRING '}' '=' 74 FuncConstruction: . IncompleteFuncSignature '{' Denotation.seq '}' '=' 75 | . IncompleteFuncSignature '{' EXTERN QSTRING '}' '=' 76 IncompleteFuncSignature: . FuncSignature '=' 77 | . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' '=' 78 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' '=' 79 Selection: . Primary '$' ID Opt.SigClause '=' 80 | . Primary '$' STRING '=' 81 | . ID Opt.SigClause '=' 82 | . STRING '=' 83 TypeConstruction: . Enumeration '=' 84 | . Record '=' 85 | . Extension '=' 86 | . Product '=' 87 | . Union '=' 91 ArgList: . '[' Opt.Denotation.list ']' '=' 103 Enumeration: . ENUM '{' Id.list '}' '=' 104 Extension: . EXTEND '{' Denotation '}' '=' 105 Product: . PROD Opt.Id '{' Opt.Parameter.list '}' '=' 106 | . PROD error 107 Record: . RECORD '{' Opt.RecordElement.list '}' '=' 108 | . RECORD error 109 Union: . UNION Opt.Id '{' Opt.Parameter.list '}' '=' 110 | . UNION error 144 ID: . WORDID '=' 145 | . OPID '=' 146 STRING: . QSTRING '=' 147 | . UQSTRING '=' CAND shift, and go to state 6 COR shift, and go to state 7 DO shift, and go to state 8 ENUM shift, and go to state 9 FUNC shift, and go to state 10 IF shift, and go to state 11 EXTEND shift, and go to state 12 LET shift, and go to state 13 RECORD shift, and go to state 14 UNION shift, and go to state 16 USE shift, and go to state 17 WORDID shift, and go to state 20 OPID shift, and go to state 21 PROD shift, and go to state 22 QSTRING shift, and go to state 23 UQSTRING shift, and go to state 24 EXTERN shift, and go to state 25 '(' shift, and go to state 27 '[' shift, and go to state 28 '\002' shift, and go to state 29 FuncSignature go to state 81 BasicDenotation go to state 361 Primary.list go to state 34 Primary go to state 35 FuncConstruction go to state 36 IncompleteFuncSignature go to state 37 Selection go to state 38 TypeConstruction go to state 39 ArgList go to state 40 Enumeration go to state 41 Extension go to state 42 Product go to state 43 Record go to state 44 Union go to state 45 ID go to state 46 STRING go to state 47 State 346 39 Opt.TypeSignatureComponent.list: Opt.TypeSignatureComponent.list ';' Opt.TypeSignatureComponents '=' . $default reduce using rule 39 (Opt.TypeSignatureComponent.list) State 347 118 WithList: WITH Opt.Id '{' Opt.Declaration.list '}' '=' . $default reduce using rule 118 (WithList) State 348 120 ExportList: Start.ExportList Opt.Id '{' ExportElement.list '}' '=' . $default reduce using rule 120 (ExportList) State 349 126 ExportElement.list: ExportElement ';' ExportElement.list . '=' '=' shift, and go to state 362 State 350 132 Opt.ExportList: '=' . $default reduce using rule 132 (Opt.ExportList) State 351 131 Opt.ExportList: ExportList . '=' '=' shift, and go to state 363 State 352 128 ExportElement: ID Opt.SigClause Opt.ExportList . '=' '=' shift, and go to state 364 State 353 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 35 | FUNC Opt.InLine '[' Opt.Parameter.list ']' . Signature '=' 144 ID: . WORDID '=' 145 | . OPID '=' FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 Signature go to state 305 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 181 State 354 14 Opt.Parameter.list: Opt.Parameter.list . ';' Opt.Parameters '=' 34 FuncSignature: FUNC Special Opt.InLine '[' Opt.Parameter.list . ']' Signature '=' ';' shift, and go to state 258 ']' shift, and go to state 365 State 355 69 Denotation.seq: Denotation.seq . ';' Opt.Denotation '=' 135 Opt.ElseList: . ElseList 136 | . %empty [FI, OD, '#'] 137 ElseList: . ELSE Denotation.seq 138 | . ELSIF Denotation THEN Denotation.seq Opt.ElseList 138 | ELSIF Denotation THEN Denotation.seq . Opt.ElseList ELSE shift, and go to state 247 ELSIF shift, and go to state 248 ';' shift, and go to state 119 $default reduce using rule 136 (Opt.ElseList) Opt.ElseList go to state 366 ElseList go to state 250 State 356 34 FuncSignature: FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' . $default reduce using rule 34 (FuncSignature) State 357 23 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING . QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING . ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' QSTRING shift, and go to state 367 ')' shift, and go to state 368 State 358 25 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' . Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 40 Opt.Id: . ID '=' 41 | . '=' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 72 Opt.Id go to state 369 ID go to state 75 State 359 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 26 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' . Opt.TypeSignatureComponent.list '}' '=' 36 Opt.TypeSignatureComponents: . TypeSignatureComponents '=' 37 | . '=' 38 Opt.TypeSignatureComponent.list: . Opt.TypeSignatureComponents '=' 39 | . Opt.TypeSignatureComponent.list ';' Opt.TypeSignatureComponents '=' 42 TypeSignatureComponents: . Id.list Opt.Colon Signature '=' 43 | . Id.list Opt.Colon Opt.Readonly FIELD BasicDenotation '=' 44 | . ID '=' 45 | . CHARACTERS '=' 46 | . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 221 CHARACTERS shift, and go to state 222 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 223 Id.list go to state 224 Opt.TypeSignatureComponents go to state 225 Opt.TypeSignatureComponent.list go to state 370 TypeSignatureComponents go to state 227 ID go to state 228 State 360 27 ManifestSignature: TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' . '=' '=' shift, and go to state 371 State 361 43 TypeSignatureComponents: Id.list Opt.Colon Opt.Readonly FIELD BasicDenotation . '=' '=' shift, and go to state 372 State 362 126 ExportElement.list: ExportElement ';' ExportElement.list '=' . $default reduce using rule 126 (ExportElement.list) State 363 131 Opt.ExportList: ExportList '=' . $default reduce using rule 131 (Opt.ExportList) State 364 128 ExportElement: ID Opt.SigClause Opt.ExportList '=' . $default reduce using rule 128 (ExportElement) State 365 17 Signature: . ID 18 | . ManifestSignature 19 ManifestSignature: . SIGNATURE 20 | . VAR BasicDenotation '=' 21 | . VAL BasicDenotation '=' 22 | . FuncSignature '=' 23 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 24 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 25 | . TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 26 | . TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 27 | . TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 28 | . TYPE Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 34 FuncSignature: . FUNC Special Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 34 | FUNC Special Opt.InLine '[' Opt.Parameter.list ']' . Signature '=' 35 | . FUNC Opt.InLine '[' Opt.Parameter.list ']' Signature '=' 144 ID: . WORDID '=' 145 | . OPID '=' FUNC shift, and go to state 177 TYPE shift, and go to state 15 VAL shift, and go to state 18 VAR shift, and go to state 19 WORDID shift, and go to state 20 OPID shift, and go to state 21 SIGNATURE shift, and go to state 26 Signature go to state 339 ManifestSignature go to state 179 FuncSignature go to state 180 ID go to state 181 State 366 138 ElseList: ELSIF Denotation THEN Denotation.seq Opt.ElseList . $default reduce using rule 138 (ElseList) State 367 23 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING . ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' ')' shift, and go to state 373 State 368 24 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' . Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 40 Opt.Id: . ID '=' 41 | . '=' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 72 Opt.Id go to state 374 ID go to state 75 State 369 25 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id . '{' Opt.TypeSignatureComponent.list '}' '=' '{' shift, and go to state 375 State 370 26 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list . '}' '=' 39 Opt.TypeSignatureComponent.list: Opt.TypeSignatureComponent.list . ';' Opt.TypeSignatureComponents '=' ';' shift, and go to state 278 '}' shift, and go to state 376 State 371 27 ManifestSignature: TYPE '(' Opt.Simple ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' . $default reduce using rule 27 (ManifestSignature) State 372 43 TypeSignatureComponents: Id.list Opt.Colon Opt.Readonly FIELD BasicDenotation '=' . $default reduce using rule 43 (TypeSignatureComponents) State 373 23 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' . Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' 40 Opt.Id: . ID '=' 41 | . '=' 144 ID: . WORDID '=' 145 | . OPID '=' WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 72 Opt.Id go to state 377 ID go to state 75 State 374 24 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id . '{' Opt.TypeSignatureComponent.list '}' '=' '{' shift, and go to state 378 State 375 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 25 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' . Opt.TypeSignatureComponent.list '}' '=' 36 Opt.TypeSignatureComponents: . TypeSignatureComponents '=' 37 | . '=' 38 Opt.TypeSignatureComponent.list: . Opt.TypeSignatureComponents '=' 39 | . Opt.TypeSignatureComponent.list ';' Opt.TypeSignatureComponents '=' 42 TypeSignatureComponents: . Id.list Opt.Colon Signature '=' 43 | . Id.list Opt.Colon Opt.Readonly FIELD BasicDenotation '=' 44 | . ID '=' 45 | . CHARACTERS '=' 46 | . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 221 CHARACTERS shift, and go to state 222 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 223 Id.list go to state 224 Opt.TypeSignatureComponents go to state 225 Opt.TypeSignatureComponent.list go to state 379 TypeSignatureComponents go to state 227 ID go to state 228 State 376 26 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' . '=' '=' shift, and go to state 380 State 377 23 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id . '{' Opt.TypeSignatureComponent.list '}' '=' '{' shift, and go to state 381 State 378 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 24 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' . Opt.TypeSignatureComponent.list '}' '=' 36 Opt.TypeSignatureComponents: . TypeSignatureComponents '=' 37 | . '=' 38 Opt.TypeSignatureComponent.list: . Opt.TypeSignatureComponents '=' 39 | . Opt.TypeSignatureComponent.list ';' Opt.TypeSignatureComponents '=' 42 TypeSignatureComponents: . Id.list Opt.Colon Signature '=' 43 | . Id.list Opt.Colon Opt.Readonly FIELD BasicDenotation '=' 44 | . ID '=' 45 | . CHARACTERS '=' 46 | . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 221 CHARACTERS shift, and go to state 222 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 223 Id.list go to state 224 Opt.TypeSignatureComponents go to state 225 Opt.TypeSignatureComponent.list go to state 382 TypeSignatureComponents go to state 227 ID go to state 228 State 379 25 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list . '}' '=' 39 Opt.TypeSignatureComponent.list: Opt.TypeSignatureComponent.list . ';' Opt.TypeSignatureComponents '=' ';' shift, and go to state 278 '}' shift, and go to state 383 State 380 26 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' . $default reduce using rule 26 (ManifestSignature) State 381 15 Id.list: . ID '=' 16 | . Id.list ',' ID '=' 23 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' . Opt.TypeSignatureComponent.list '}' '=' 36 Opt.TypeSignatureComponents: . TypeSignatureComponents '=' 37 | . '=' 38 Opt.TypeSignatureComponent.list: . Opt.TypeSignatureComponents '=' 39 | . Opt.TypeSignatureComponent.list ';' Opt.TypeSignatureComponents '=' 42 TypeSignatureComponents: . Id.list Opt.Colon Signature '=' 43 | . Id.list Opt.Colon Opt.Readonly FIELD BasicDenotation '=' 44 | . ID '=' 45 | . CHARACTERS '=' 46 | . error 144 ID: . WORDID '=' 145 | . OPID '=' error shift, and go to state 221 CHARACTERS shift, and go to state 222 WORDID shift, and go to state 20 OPID shift, and go to state 21 '=' shift, and go to state 223 Id.list go to state 224 Opt.TypeSignatureComponents go to state 225 Opt.TypeSignatureComponent.list go to state 384 TypeSignatureComponents go to state 227 ID go to state 228 State 382 24 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list . '}' '=' 39 Opt.TypeSignatureComponent.list: Opt.TypeSignatureComponent.list . ';' Opt.TypeSignatureComponents '=' ';' shift, and go to state 278 '}' shift, and go to state 385 State 383 25 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' . '=' '=' shift, and go to state 386 State 384 23 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list . '}' '=' 39 Opt.TypeSignatureComponent.list: Opt.TypeSignatureComponent.list . ';' Opt.TypeSignatureComponents '=' ';' shift, and go to state 278 '}' shift, and go to state 387 State 385 24 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' . '=' '=' shift, and go to state 388 State 386 25 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' . $default reduce using rule 25 (ManifestSignature) State 387 23 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' . '=' '=' shift, and go to state 389 State 388 24 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' . $default reduce using rule 24 (ManifestSignature) State 389 23 ManifestSignature: TYPE '(' Opt.Simple CONSTANTS QSTRING QSTRING QSTRING UQSTRING QSTRING ')' Opt.Id '{' Opt.TypeSignatureComponent.list '}' '=' . $default reduce using rule 23 (ManifestSignature)