aboutsummaryrefslogtreecommitdiffstats
path: root/python
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2019-08-16 22:31:06 +0200
committerTristan Gingold <tgingold@free.fr>2019-08-17 21:40:42 +0200
commit7d034fc52f6b15e743ca91e7b1a4314bf31623b9 (patch)
tree60c6c4deb857b89e5d9f86b55d9fee8160313545 /python
parent60b4bf2b63cdad9cfd36106f084fcbe94d01d4d5 (diff)
downloadghdl-7d034fc52f6b15e743ca91e7b1a4314bf31623b9.tar.gz
ghdl-7d034fc52f6b15e743ca91e7b1a4314bf31623b9.tar.bz2
ghdl-7d034fc52f6b15e743ca91e7b1a4314bf31623b9.zip
vhdl: parse verification unit (WIP).
Diffstat (limited to 'python')
-rw-r--r--python/libghdl/thin/vhdl/nodes.py485
1 files changed, 243 insertions, 242 deletions
diff --git a/python/libghdl/thin/vhdl/nodes.py b/python/libghdl/thin/vhdl/nodes.py
index cd8e269c9..6c38ba503 100644
--- a/python/libghdl/thin/vhdl/nodes.py
+++ b/python/libghdl/thin/vhdl/nodes.py
@@ -45,248 +45,249 @@ class Iir_Kind:
Entity_Aspect_Entity = 30
Entity_Aspect_Configuration = 31
Entity_Aspect_Open = 32
- Block_Configuration = 33
- Block_Header = 34
- Component_Configuration = 35
- Binding_Indication = 36
- Entity_Class = 37
- Attribute_Value = 38
- Signature = 39
- Aggregate_Info = 40
- Procedure_Call = 41
- Record_Element_Constraint = 42
- Array_Element_Resolution = 43
- Record_Resolution = 44
- Record_Element_Resolution = 45
- Attribute_Specification = 46
- Disconnection_Specification = 47
- Configuration_Specification = 48
- Access_Type_Definition = 49
- Incomplete_Type_Definition = 50
- Interface_Type_Definition = 51
- File_Type_Definition = 52
- Protected_Type_Declaration = 53
- Record_Type_Definition = 54
- Array_Type_Definition = 55
- Array_Subtype_Definition = 56
- Record_Subtype_Definition = 57
- Access_Subtype_Definition = 58
- Physical_Subtype_Definition = 59
- Floating_Subtype_Definition = 60
- Integer_Subtype_Definition = 61
- Enumeration_Subtype_Definition = 62
- Enumeration_Type_Definition = 63
- Integer_Type_Definition = 64
- Floating_Type_Definition = 65
- Physical_Type_Definition = 66
- Range_Expression = 67
- Protected_Type_Body = 68
- Wildcard_Type_Definition = 69
- Subtype_Definition = 70
- Scalar_Nature_Definition = 71
- Overload_List = 72
- Entity_Declaration = 73
- Configuration_Declaration = 74
- Context_Declaration = 75
- Package_Declaration = 76
- Package_Instantiation_Declaration = 77
- Vmode_Declaration = 78
- Vprop_Declaration = 79
- Vunit_Declaration = 80
- Package_Body = 81
- Architecture_Body = 82
- Type_Declaration = 83
- Anonymous_Type_Declaration = 84
- Subtype_Declaration = 85
- Nature_Declaration = 86
- Subnature_Declaration = 87
- Package_Header = 88
- Unit_Declaration = 89
- Library_Declaration = 90
- Component_Declaration = 91
- Attribute_Declaration = 92
- Group_Template_Declaration = 93
- Group_Declaration = 94
- Element_Declaration = 95
- Non_Object_Alias_Declaration = 96
- Psl_Declaration = 97
- Psl_Endpoint_Declaration = 98
- Terminal_Declaration = 99
- Free_Quantity_Declaration = 100
- Across_Quantity_Declaration = 101
- Through_Quantity_Declaration = 102
- Enumeration_Literal = 103
- Function_Declaration = 104
- Procedure_Declaration = 105
- Function_Body = 106
- Procedure_Body = 107
- Object_Alias_Declaration = 108
- File_Declaration = 109
- Guard_Signal_Declaration = 110
- Signal_Declaration = 111
- Variable_Declaration = 112
- Constant_Declaration = 113
- Iterator_Declaration = 114
- Interface_Constant_Declaration = 115
- Interface_Variable_Declaration = 116
- Interface_Signal_Declaration = 117
- Interface_File_Declaration = 118
- Interface_Type_Declaration = 119
- Interface_Package_Declaration = 120
- Interface_Function_Declaration = 121
- Interface_Procedure_Declaration = 122
- Anonymous_Signal_Declaration = 123
- Signal_Attribute_Declaration = 124
- Identity_Operator = 125
- Negation_Operator = 126
- Absolute_Operator = 127
- Not_Operator = 128
- Implicit_Condition_Operator = 129
- Condition_Operator = 130
- Reduction_And_Operator = 131
- Reduction_Or_Operator = 132
- Reduction_Nand_Operator = 133
- Reduction_Nor_Operator = 134
- Reduction_Xor_Operator = 135
- Reduction_Xnor_Operator = 136
- And_Operator = 137
- Or_Operator = 138
- Nand_Operator = 139
- Nor_Operator = 140
- Xor_Operator = 141
- Xnor_Operator = 142
- Equality_Operator = 143
- Inequality_Operator = 144
- Less_Than_Operator = 145
- Less_Than_Or_Equal_Operator = 146
- Greater_Than_Operator = 147
- Greater_Than_Or_Equal_Operator = 148
- Match_Equality_Operator = 149
- Match_Inequality_Operator = 150
- Match_Less_Than_Operator = 151
- Match_Less_Than_Or_Equal_Operator = 152
- Match_Greater_Than_Operator = 153
- Match_Greater_Than_Or_Equal_Operator = 154
- Sll_Operator = 155
- Sla_Operator = 156
- Srl_Operator = 157
- Sra_Operator = 158
- Rol_Operator = 159
- Ror_Operator = 160
- Addition_Operator = 161
- Substraction_Operator = 162
- Concatenation_Operator = 163
- Multiplication_Operator = 164
- Division_Operator = 165
- Modulus_Operator = 166
- Remainder_Operator = 167
- Exponentiation_Operator = 168
- Function_Call = 169
- Aggregate = 170
- Parenthesis_Expression = 171
- Qualified_Expression = 172
- Type_Conversion = 173
- Allocator_By_Expression = 174
- Allocator_By_Subtype = 175
- Selected_Element = 176
- Dereference = 177
- Implicit_Dereference = 178
- Slice_Name = 179
- Indexed_Name = 180
- Psl_Expression = 181
- Sensitized_Process_Statement = 182
- Process_Statement = 183
- Concurrent_Simple_Signal_Assignment = 184
- Concurrent_Conditional_Signal_Assignment = 185
- Concurrent_Selected_Signal_Assignment = 186
- Concurrent_Assertion_Statement = 187
- Concurrent_Procedure_Call_Statement = 188
- Psl_Assert_Directive = 189
- Psl_Assume_Directive = 190
- Psl_Cover_Directive = 191
- Psl_Restrict_Directive = 192
- Block_Statement = 193
- If_Generate_Statement = 194
- Case_Generate_Statement = 195
- For_Generate_Statement = 196
- Component_Instantiation_Statement = 197
- Psl_Default_Clock = 198
- Simple_Simultaneous_Statement = 199
- Generate_Statement_Body = 200
- If_Generate_Else_Clause = 201
- Simple_Signal_Assignment_Statement = 202
- Conditional_Signal_Assignment_Statement = 203
- Selected_Waveform_Assignment_Statement = 204
- Null_Statement = 205
- Assertion_Statement = 206
- Report_Statement = 207
- Wait_Statement = 208
- Variable_Assignment_Statement = 209
- Conditional_Variable_Assignment_Statement = 210
- Return_Statement = 211
- For_Loop_Statement = 212
- While_Loop_Statement = 213
- Next_Statement = 214
- Exit_Statement = 215
- Case_Statement = 216
- Procedure_Call_Statement = 217
- If_Statement = 218
- Elsif = 219
- Character_Literal = 220
- Simple_Name = 221
- Selected_Name = 222
- Operator_Symbol = 223
- Reference_Name = 224
- External_Constant_Name = 225
- External_Signal_Name = 226
- External_Variable_Name = 227
- Selected_By_All_Name = 228
- Parenthesis_Name = 229
- Package_Pathname = 230
- Absolute_Pathname = 231
- Relative_Pathname = 232
- Pathname_Element = 233
- Base_Attribute = 234
- Subtype_Attribute = 235
- Element_Attribute = 236
- Left_Type_Attribute = 237
- Right_Type_Attribute = 238
- High_Type_Attribute = 239
- Low_Type_Attribute = 240
- Ascending_Type_Attribute = 241
- Image_Attribute = 242
- Value_Attribute = 243
- Pos_Attribute = 244
- Val_Attribute = 245
- Succ_Attribute = 246
- Pred_Attribute = 247
- Leftof_Attribute = 248
- Rightof_Attribute = 249
- Delayed_Attribute = 250
- Stable_Attribute = 251
- Quiet_Attribute = 252
- Transaction_Attribute = 253
- Event_Attribute = 254
- Active_Attribute = 255
- Last_Event_Attribute = 256
- Last_Active_Attribute = 257
- Last_Value_Attribute = 258
- Driving_Attribute = 259
- Driving_Value_Attribute = 260
- Behavior_Attribute = 261
- Structure_Attribute = 262
- Simple_Name_Attribute = 263
- Instance_Name_Attribute = 264
- Path_Name_Attribute = 265
- Left_Array_Attribute = 266
- Right_Array_Attribute = 267
- High_Array_Attribute = 268
- Low_Array_Attribute = 269
- Length_Array_Attribute = 270
- Ascending_Array_Attribute = 271
- Range_Array_Attribute = 272
- Reverse_Range_Array_Attribute = 273
- Attribute_Name = 274
+ Psl_Hierarchical_Name = 33
+ Block_Configuration = 34
+ Block_Header = 35
+ Component_Configuration = 36
+ Binding_Indication = 37
+ Entity_Class = 38
+ Attribute_Value = 39
+ Signature = 40
+ Aggregate_Info = 41
+ Procedure_Call = 42
+ Record_Element_Constraint = 43
+ Array_Element_Resolution = 44
+ Record_Resolution = 45
+ Record_Element_Resolution = 46
+ Attribute_Specification = 47
+ Disconnection_Specification = 48
+ Configuration_Specification = 49
+ Access_Type_Definition = 50
+ Incomplete_Type_Definition = 51
+ Interface_Type_Definition = 52
+ File_Type_Definition = 53
+ Protected_Type_Declaration = 54
+ Record_Type_Definition = 55
+ Array_Type_Definition = 56
+ Array_Subtype_Definition = 57
+ Record_Subtype_Definition = 58
+ Access_Subtype_Definition = 59
+ Physical_Subtype_Definition = 60
+ Floating_Subtype_Definition = 61
+ Integer_Subtype_Definition = 62
+ Enumeration_Subtype_Definition = 63
+ Enumeration_Type_Definition = 64
+ Integer_Type_Definition = 65
+ Floating_Type_Definition = 66
+ Physical_Type_Definition = 67
+ Range_Expression = 68
+ Protected_Type_Body = 69
+ Wildcard_Type_Definition = 70
+ Subtype_Definition = 71
+ Scalar_Nature_Definition = 72
+ Overload_List = 73
+ Entity_Declaration = 74
+ Configuration_Declaration = 75
+ Context_Declaration = 76
+ Package_Declaration = 77
+ Package_Instantiation_Declaration = 78
+ Vmode_Declaration = 79
+ Vprop_Declaration = 80
+ Vunit_Declaration = 81
+ Package_Body = 82
+ Architecture_Body = 83
+ Type_Declaration = 84
+ Anonymous_Type_Declaration = 85
+ Subtype_Declaration = 86
+ Nature_Declaration = 87
+ Subnature_Declaration = 88
+ Package_Header = 89
+ Unit_Declaration = 90
+ Library_Declaration = 91
+ Component_Declaration = 92
+ Attribute_Declaration = 93
+ Group_Template_Declaration = 94
+ Group_Declaration = 95
+ Element_Declaration = 96
+ Non_Object_Alias_Declaration = 97
+ Psl_Declaration = 98
+ Psl_Endpoint_Declaration = 99
+ Terminal_Declaration = 100
+ Free_Quantity_Declaration = 101
+ Across_Quantity_Declaration = 102
+ Through_Quantity_Declaration = 103
+ Enumeration_Literal = 104
+ Function_Declaration = 105
+ Procedure_Declaration = 106
+ Function_Body = 107
+ Procedure_Body = 108
+ Object_Alias_Declaration = 109
+ File_Declaration = 110
+ Guard_Signal_Declaration = 111
+ Signal_Declaration = 112
+ Variable_Declaration = 113
+ Constant_Declaration = 114
+ Iterator_Declaration = 115
+ Interface_Constant_Declaration = 116
+ Interface_Variable_Declaration = 117
+ Interface_Signal_Declaration = 118
+ Interface_File_Declaration = 119
+ Interface_Type_Declaration = 120
+ Interface_Package_Declaration = 121
+ Interface_Function_Declaration = 122
+ Interface_Procedure_Declaration = 123
+ Anonymous_Signal_Declaration = 124
+ Signal_Attribute_Declaration = 125
+ Identity_Operator = 126
+ Negation_Operator = 127
+ Absolute_Operator = 128
+ Not_Operator = 129
+ Implicit_Condition_Operator = 130
+ Condition_Operator = 131
+ Reduction_And_Operator = 132
+ Reduction_Or_Operator = 133
+ Reduction_Nand_Operator = 134
+ Reduction_Nor_Operator = 135
+ Reduction_Xor_Operator = 136
+ Reduction_Xnor_Operator = 137
+ And_Operator = 138
+ Or_Operator = 139
+ Nand_Operator = 140
+ Nor_Operator = 141
+ Xor_Operator = 142
+ Xnor_Operator = 143
+ Equality_Operator = 144
+ Inequality_Operator = 145
+ Less_Than_Operator = 146
+ Less_Than_Or_Equal_Operator = 147
+ Greater_Than_Operator = 148
+ Greater_Than_Or_Equal_Operator = 149
+ Match_Equality_Operator = 150
+ Match_Inequality_Operator = 151
+ Match_Less_Than_Operator = 152
+ Match_Less_Than_Or_Equal_Operator = 153
+ Match_Greater_Than_Operator = 154
+ Match_Greater_Than_Or_Equal_Operator = 155
+ Sll_Operator = 156
+ Sla_Operator = 157
+ Srl_Operator = 158
+ Sra_Operator = 159
+ Rol_Operator = 160
+ Ror_Operator = 161
+ Addition_Operator = 162
+ Substraction_Operator = 163
+ Concatenation_Operator = 164
+ Multiplication_Operator = 165
+ Division_Operator = 166
+ Modulus_Operator = 167
+ Remainder_Operator = 168
+ Exponentiation_Operator = 169
+ Function_Call = 170
+ Aggregate = 171
+ Parenthesis_Expression = 172
+ Qualified_Expression = 173
+ Type_Conversion = 174
+ Allocator_By_Expression = 175
+ Allocator_By_Subtype = 176
+ Selected_Element = 177
+ Dereference = 178
+ Implicit_Dereference = 179
+ Slice_Name = 180
+ Indexed_Name = 181
+ Psl_Expression = 182
+ Sensitized_Process_Statement = 183
+ Process_Statement = 184
+ Concurrent_Simple_Signal_Assignment = 185
+ Concurrent_Conditional_Signal_Assignment = 186
+ Concurrent_Selected_Signal_Assignment = 187
+ Concurrent_Assertion_Statement = 188
+ Concurrent_Procedure_Call_Statement = 189
+ Psl_Assert_Directive = 190
+ Psl_Assume_Directive = 191
+ Psl_Cover_Directive = 192
+ Psl_Restrict_Directive = 193
+ Block_Statement = 194
+ If_Generate_Statement = 195
+ Case_Generate_Statement = 196
+ For_Generate_Statement = 197
+ Component_Instantiation_Statement = 198
+ Psl_Default_Clock = 199
+ Simple_Simultaneous_Statement = 200
+ Generate_Statement_Body = 201
+ If_Generate_Else_Clause = 202
+ Simple_Signal_Assignment_Statement = 203
+ Conditional_Signal_Assignment_Statement = 204
+ Selected_Waveform_Assignment_Statement = 205
+ Null_Statement = 206
+ Assertion_Statement = 207
+ Report_Statement = 208
+ Wait_Statement = 209
+ Variable_Assignment_Statement = 210
+ Conditional_Variable_Assignment_Statement = 211
+ Return_Statement = 212
+ For_Loop_Statement = 213
+ While_Loop_Statement = 214
+ Next_Statement = 215
+ Exit_Statement = 216
+ Case_Statement = 217
+ Procedure_Call_Statement = 218
+ If_Statement = 219
+ Elsif = 220
+ Character_Literal = 221
+ Simple_Name = 222
+ Selected_Name = 223
+ Operator_Symbol = 224
+ Reference_Name = 225
+ External_Constant_Name = 226
+ External_Signal_Name = 227
+ External_Variable_Name = 228
+ Selected_By_All_Name = 229
+ Parenthesis_Name = 230
+ Package_Pathname = 231
+ Absolute_Pathname = 232
+ Relative_Pathname = 233
+ Pathname_Element = 234
+ Base_Attribute = 235
+ Subtype_Attribute = 236
+ Element_Attribute = 237
+ Left_Type_Attribute = 238
+ Right_Type_Attribute = 239
+ High_Type_Attribute = 240
+ Low_Type_Attribute = 241
+ Ascending_Type_Attribute = 242
+ Image_Attribute = 243
+ Value_Attribute = 244
+ Pos_Attribute = 245
+ Val_Attribute = 246
+ Succ_Attribute = 247
+ Pred_Attribute = 248
+ Leftof_Attribute = 249
+ Rightof_Attribute = 250
+ Delayed_Attribute = 251
+ Stable_Attribute = 252
+ Quiet_Attribute = 253
+ Transaction_Attribute = 254
+ Event_Attribute = 255
+ Active_Attribute = 256
+ Last_Event_Attribute = 257
+ Last_Active_Attribute = 258
+ Last_Value_Attribute = 259
+ Driving_Attribute = 260
+ Driving_Value_Attribute = 261
+ Behavior_Attribute = 262
+ Structure_Attribute = 263
+ Simple_Name_Attribute = 264
+ Instance_Name_Attribute = 265
+ Path_Name_Attribute = 266
+ Left_Array_Attribute = 267
+ Right_Array_Attribute = 268
+ High_Array_Attribute = 269
+ Low_Array_Attribute = 270
+ Length_Array_Attribute = 271
+ Ascending_Array_Attribute = 272
+ Range_Array_Attribute = 273
+ Reverse_Range_Array_Attribute = 274
+ Attribute_Name = 275
class Iir_Kinds: