diff --git a/SyntaxTree/tree/NodesGenerator.exe b/SyntaxTree/tree/NodesGenerator.exe
index ba9504c9e..5e3fa6700 100644
Binary files a/SyntaxTree/tree/NodesGenerator.exe and b/SyntaxTree/tree/NodesGenerator.exe differ
diff --git a/SyntaxTree/tree/Tree.cs b/SyntaxTree/tree/Tree.cs
index 46a4681ce..5e9f13d0e 100644
--- a/SyntaxTree/tree/Tree.cs
+++ b/SyntaxTree/tree/Tree.cs
@@ -410,6 +410,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_left_logical_bracket=value;
+ if (_left_logical_bracket != null)
+ _left_logical_bracket.Parent = this;
}
}
@@ -425,6 +427,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_right_logical_bracket=value;
+ if (_right_logical_bracket != null)
+ _right_logical_bracket.Parent = this;
}
}
@@ -941,6 +945,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_to=value;
+ if (_to != null)
+ _to.Parent = this;
}
}
@@ -956,6 +962,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_from=value;
+ if (_from != null)
+ _from.Parent = this;
}
}
@@ -1146,6 +1154,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_left=value;
+ if (_left != null)
+ _left.Parent = this;
}
}
@@ -1161,6 +1171,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_right=value;
+ if (_right != null)
+ _right.Parent = this;
}
}
@@ -1348,6 +1360,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_subnode=value;
+ if (_subnode != null)
+ _subnode.Parent = this;
}
}
@@ -2033,6 +2047,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_subprogram_code=value;
+ if (_subprogram_code != null)
+ _subprogram_code.Parent = this;
}
}
@@ -2048,6 +2064,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_subprogram_defs=value;
+ if (_subprogram_defs != null)
+ _subprogram_defs.Parent = this;
}
}
@@ -2308,6 +2326,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_attr_list=value;
+ if (_attr_list != null)
+ _attr_list.Parent = this;
}
}
@@ -3639,6 +3659,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_vars=value;
+ if (_vars != null)
+ _vars.Parent = this;
}
}
@@ -3654,6 +3676,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_vars_type=value;
+ if (_vars_type != null)
+ _vars_type.Parent = this;
}
}
@@ -3669,6 +3693,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_inital_value=value;
+ if (_inital_value != null)
+ _inital_value.Parent = this;
}
}
@@ -3882,6 +3908,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_attributes=value;
+ if (_attributes != null)
+ _attributes.Parent = this;
}
}
@@ -4675,6 +4703,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_prog_name=value;
+ if (_prog_name != null)
+ _prog_name.Parent = this;
}
}
@@ -5282,6 +5312,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_dereferencing_value=value;
+ if (_dereferencing_value != null)
+ _dereferencing_value.Parent = this;
}
}
@@ -5458,6 +5490,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_indexes=value;
+ if (_indexes != null)
+ _indexes.Parent = this;
}
}
@@ -5647,6 +5681,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_loop_variable=value;
+ if (_loop_variable != null)
+ _loop_variable.Parent = this;
}
}
@@ -5662,6 +5698,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_initial_value=value;
+ if (_initial_value != null)
+ _initial_value.Parent = this;
}
}
@@ -5677,6 +5715,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_finish_value=value;
+ if (_finish_value != null)
+ _finish_value.Parent = this;
}
}
@@ -5692,6 +5732,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_statements=value;
+ if (_statements != null)
+ _statements.Parent = this;
}
}
@@ -5722,6 +5764,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_increment_value=value;
+ if (_increment_value != null)
+ _increment_value.Parent = this;
}
}
@@ -5737,6 +5781,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type_name=value;
+ if (_type_name != null)
+ _type_name.Parent = this;
}
}
@@ -5977,6 +6023,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_statements=value;
+ if (_statements != null)
+ _statements.Parent = this;
}
}
@@ -5992,6 +6040,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -6166,6 +6216,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -6181,6 +6233,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_statements=value;
+ if (_statements != null)
+ _statements.Parent = this;
}
}
@@ -6371,6 +6425,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_condition=value;
+ if (_condition != null)
+ _condition.Parent = this;
}
}
@@ -6386,6 +6442,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_then_body=value;
+ if (_then_body != null)
+ _then_body.Parent = this;
}
}
@@ -6401,6 +6459,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_else_body=value;
+ if (_else_body != null)
+ _else_body.Parent = this;
}
}
@@ -6603,6 +6663,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_pointed_to=value;
+ if (_pointed_to != null)
+ _pointed_to.Parent = this;
}
}
@@ -6797,6 +6859,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_left=value;
+ if (_left != null)
+ _left.Parent = this;
}
}
@@ -6812,6 +6876,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_right=value;
+ if (_right != null)
+ _right.Parent = this;
}
}
@@ -7390,6 +7456,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_indexers=value;
+ if (_indexers != null)
+ _indexers.Parent = this;
}
}
@@ -7405,6 +7473,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_elements_type=value;
+ if (_elements_type != null)
+ _elements_type.Parent = this;
}
}
@@ -7586,6 +7656,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_labels=value;
+ if (_labels != null)
+ _labels.Parent = this;
}
}
@@ -7909,6 +7981,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_idents=value;
+ if (_idents != null)
+ _idents.Parent = this;
}
}
@@ -7924,6 +7998,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_vars_type=value;
+ if (_vars_type != null)
+ _vars_type.Parent = this;
}
}
@@ -7954,6 +8030,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_inital_value=value;
+ if (_inital_value != null)
+ _inital_value.Parent = this;
}
}
@@ -8833,6 +8911,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_parameters=value;
+ if (_parameters != null)
+ _parameters.Parent = this;
}
}
@@ -8848,6 +8928,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_proc_attributes=value;
+ if (_proc_attributes != null)
+ _proc_attributes.Parent = this;
}
}
@@ -8863,6 +8945,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_name=value;
+ if (_name != null)
+ _name.Parent = this;
}
}
@@ -8908,6 +8992,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_template_args=value;
+ if (_template_args != null)
+ _template_args.Parent = this;
}
}
@@ -8923,6 +9009,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_where_defs=value;
+ if (_where_defs != null)
+ _where_defs.Parent = this;
}
}
@@ -9180,6 +9268,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_return_type=value;
+ if (_return_type != null)
+ _return_type.Parent = this;
}
}
@@ -9421,6 +9511,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_proc_header=value;
+ if (_proc_header != null)
+ _proc_header.Parent = this;
}
}
@@ -9436,6 +9528,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_proc_body=value;
+ if (_proc_body != null)
+ _proc_body.Parent = this;
}
}
@@ -9623,6 +9717,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type_name=value;
+ if (_type_name != null)
+ _type_name.Parent = this;
}
}
@@ -9638,6 +9734,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type_def=value;
+ if (_type_def != null)
+ _type_def.Parent = this;
}
}
@@ -10313,6 +10411,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_const_type=value;
+ if (_const_type != null)
+ _const_type.Parent = this;
}
}
@@ -10497,6 +10597,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_const_name=value;
+ if (_const_name != null)
+ _const_name.Parent = this;
}
}
@@ -10512,6 +10614,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_const_value=value;
+ if (_const_value != null)
+ _const_value.Parent = this;
}
}
@@ -11014,6 +11118,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_idunit_name=value;
+ if (_idunit_name != null)
+ _idunit_name.Parent = this;
}
}
@@ -11177,6 +11283,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_name=value;
+ if (_name != null)
+ _name.Parent = this;
}
}
@@ -11345,6 +11453,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_in_file=value;
+ if (_in_file != null)
+ _in_file.Parent = this;
}
}
@@ -11837,6 +11947,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_used_units=value;
+ if (_used_units != null)
+ _used_units.Parent = this;
}
}
@@ -11852,6 +11964,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_program_definitions=value;
+ if (_program_definitions != null)
+ _program_definitions.Parent = this;
}
}
@@ -11867,6 +11981,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_program_code=value;
+ if (_program_code != null)
+ _program_code.Parent = this;
}
}
@@ -11882,6 +11998,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_using_list=value;
+ if (_using_list != null)
+ _using_list.Parent = this;
}
}
@@ -12479,6 +12597,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_unit_name=value;
+ if (_unit_name != null)
+ _unit_name.Parent = this;
}
}
@@ -12494,6 +12614,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_interface_part=value;
+ if (_interface_part != null)
+ _interface_part.Parent = this;
}
}
@@ -12509,6 +12631,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_implementation_part=value;
+ if (_implementation_part != null)
+ _implementation_part.Parent = this;
}
}
@@ -12524,6 +12648,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_initialization_part=value;
+ if (_initialization_part != null)
+ _initialization_part.Parent = this;
}
}
@@ -12539,6 +12665,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_finalization_part=value;
+ if (_finalization_part != null)
+ _finalization_part.Parent = this;
}
}
@@ -12554,6 +12682,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_attributes=value;
+ if (_attributes != null)
+ _attributes.Parent = this;
}
}
@@ -12849,6 +12979,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_program_name=value;
+ if (_program_name != null)
+ _program_name.Parent = this;
}
}
@@ -12864,6 +12996,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_used_units=value;
+ if (_used_units != null)
+ _used_units.Parent = this;
}
}
@@ -12879,6 +13013,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_program_block=value;
+ if (_program_block != null)
+ _program_block.Parent = this;
}
}
@@ -12894,6 +13030,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_using_namespaces=value;
+ if (_using_namespaces != null)
+ _using_namespaces.Parent = this;
}
}
@@ -13243,6 +13381,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_address_of=value;
+ if (_address_of != null)
+ _address_of.Parent = this;
}
}
@@ -13401,6 +13541,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_conditions=value;
+ if (_conditions != null)
+ _conditions.Parent = this;
}
}
@@ -13416,6 +13558,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_exec_if_true=value;
+ if (_exec_if_true != null)
+ _exec_if_true.Parent = this;
}
}
@@ -13590,6 +13734,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_param=value;
+ if (_param != null)
+ _param.Parent = this;
}
}
@@ -13605,6 +13751,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_conditions=value;
+ if (_conditions != null)
+ _conditions.Parent = this;
}
}
@@ -13620,6 +13768,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_else_statement=value;
+ if (_else_statement != null)
+ _else_statement.Parent = this;
}
}
@@ -13831,6 +13981,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_class_name=value;
+ if (_class_name != null)
+ _class_name.Parent = this;
}
}
@@ -13846,6 +13998,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_meth_name=value;
+ if (_meth_name != null)
+ _meth_name.Parent = this;
}
}
@@ -13861,6 +14015,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_explicit_interface_name=value;
+ if (_explicit_interface_name != null)
+ _explicit_interface_name.Parent = this;
}
}
@@ -14226,6 +14382,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_left=value;
+ if (_left != null)
+ _left.Parent = this;
}
}
@@ -14241,6 +14399,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_right=value;
+ if (_right != null)
+ _right.Parent = this;
}
}
@@ -14509,6 +14669,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_label=value;
+ if (_label != null)
+ _label.Parent = this;
}
}
@@ -14667,6 +14829,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_label_name=value;
+ if (_label_name != null)
+ _label_name.Parent = this;
}
}
@@ -14682,6 +14846,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_to_statement=value;
+ if (_to_statement != null)
+ _to_statement.Parent = this;
}
}
@@ -14853,6 +15019,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_what_do=value;
+ if (_what_do != null)
+ _what_do.Parent = this;
}
}
@@ -14868,6 +15036,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_do_with=value;
+ if (_do_with != null)
+ _do_with.Parent = this;
}
}
@@ -15057,6 +15227,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_parameters=value;
+ if (_parameters != null)
+ _parameters.Parent = this;
}
}
@@ -15225,6 +15397,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_values=value;
+ if (_values != null)
+ _values.Parent = this;
}
}
@@ -15380,6 +15554,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_elements=value;
+ if (_elements != null)
+ _elements.Parent = this;
}
}
@@ -15535,6 +15711,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_accessor_name=value;
+ if (_accessor_name != null)
+ _accessor_name.Parent = this;
}
}
@@ -15682,6 +15860,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_accessor_name=value;
+ if (_accessor_name != null)
+ _accessor_name.Parent = this;
}
}
@@ -15832,6 +16012,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_read_accessor=value;
+ if (_read_accessor != null)
+ _read_accessor.Parent = this;
}
}
@@ -15847,6 +16029,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_write_accessor=value;
+ if (_write_accessor != null)
+ _write_accessor.Parent = this;
}
}
@@ -16028,6 +16212,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_property_name=value;
+ if (_property_name != null)
+ _property_name.Parent = this;
}
}
@@ -16043,6 +16229,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_property_type=value;
+ if (_property_type != null)
+ _property_type.Parent = this;
}
}
@@ -16058,6 +16246,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_index_expression=value;
+ if (_index_expression != null)
+ _index_expression.Parent = this;
}
}
@@ -16073,6 +16263,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_accessors=value;
+ if (_accessors != null)
+ _accessors.Parent = this;
}
}
@@ -16088,6 +16280,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_array_default=value;
+ if (_array_default != null)
+ _array_default.Parent = this;
}
}
@@ -16103,6 +16297,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_parameter_list=value;
+ if (_parameter_list != null)
+ _parameter_list.Parent = this;
}
}
@@ -16395,6 +16591,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_property_parametres=value;
+ if (_property_parametres != null)
+ _property_parametres.Parent = this;
}
}
@@ -16410,6 +16608,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_is_default=value;
+ if (_is_default != null)
+ _is_default.Parent = this;
}
}
@@ -16682,6 +16882,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_access_mod=value;
+ if (_access_mod != null)
+ _access_mod.Parent = this;
}
}
@@ -17521,6 +17723,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_class_parents=value;
+ if (_class_parents != null)
+ _class_parents.Parent = this;
}
}
@@ -17536,6 +17740,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_body=value;
+ if (_body != null)
+ _body.Parent = this;
}
}
@@ -17566,6 +17772,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_template_args=value;
+ if (_template_args != null)
+ _template_args.Parent = this;
}
}
@@ -17581,6 +17789,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_where_section=value;
+ if (_where_section != null)
+ _where_section.Parent = this;
}
}
@@ -17954,6 +18164,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_unit_name=value;
+ if (_unit_name != null)
+ _unit_name.Parent = this;
}
}
@@ -18144,6 +18356,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_of_type=value;
+ if (_of_type != null)
+ _of_type.Parent = this;
}
}
@@ -18315,6 +18529,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_name=value;
+ if (_name != null)
+ _name.Parent = this;
}
}
@@ -18330,6 +18546,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_val=value;
+ if (_val != null)
+ _val.Parent = this;
}
}
@@ -18855,6 +19073,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_parts=value;
+ if (_parts != null)
+ _parts.Parent = this;
}
}
@@ -18870,6 +19090,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_base_type=value;
+ if (_base_type != null)
+ _base_type.Parent = this;
}
}
@@ -19072,6 +19294,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_enumerators=value;
+ if (_enumerators != null)
+ _enumerators.Parent = this;
}
}
@@ -19377,6 +19601,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_excep=value;
+ if (_excep != null)
+ _excep.Parent = this;
}
}
@@ -20026,6 +20252,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_num_of_symbols=value;
+ if (_num_of_symbols != null)
+ _num_of_symbols.Parent = this;
}
}
@@ -20041,6 +20269,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_name=value;
+ if (_name != null)
+ _name.Parent = this;
}
}
@@ -20225,6 +20455,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_vars=value;
+ if (_vars != null)
+ _vars.Parent = this;
}
}
@@ -20240,6 +20472,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_vars_type=value;
+ if (_vars_type != null)
+ _vars_type.Parent = this;
}
}
@@ -20726,6 +20960,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_case_exprs=value;
+ if (_case_exprs != null)
+ _case_exprs.Parent = this;
}
}
@@ -20741,6 +20977,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_parts=value;
+ if (_parts != null)
+ _parts.Parent = this;
}
}
@@ -21230,6 +21468,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_var_name=value;
+ if (_var_name != null)
+ _var_name.Parent = this;
}
}
@@ -21245,6 +21485,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_var_type=value;
+ if (_var_type != null)
+ _var_type.Parent = this;
}
}
@@ -21260,6 +21502,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_vars=value;
+ if (_vars != null)
+ _vars.Parent = this;
}
}
@@ -21433,6 +21677,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_func_name=value;
+ if (_func_name != null)
+ _func_name.Parent = this;
}
}
@@ -21611,6 +21857,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_class_name=value;
+ if (_class_name != null)
+ _class_name.Parent = this;
}
}
@@ -21913,6 +22161,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_elem_type=value;
+ if (_elem_type != null)
+ _elem_type.Parent = this;
}
}
@@ -22522,6 +22772,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_method_name=value;
+ if (_method_name != null)
+ _method_name.Parent = this;
}
}
@@ -22537,6 +22789,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_exprs=value;
+ if (_exprs != null)
+ _exprs.Parent = this;
}
}
@@ -22711,6 +22965,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -22726,6 +22982,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type_def=value;
+ if (_type_def != null)
+ _type_def.Parent = this;
}
}
@@ -22916,6 +23174,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_interface_definitions=value;
+ if (_interface_definitions != null)
+ _interface_definitions.Parent = this;
}
}
@@ -22931,6 +23191,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_uses_modules=value;
+ if (_uses_modules != null)
+ _uses_modules.Parent = this;
}
}
@@ -22946,6 +23208,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_using_namespaces=value;
+ if (_using_namespaces != null)
+ _using_namespaces.Parent = this;
}
}
@@ -23125,6 +23389,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_uses_modules=value;
+ if (_uses_modules != null)
+ _uses_modules.Parent = this;
}
}
@@ -23140,6 +23406,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_implementation_definitions=value;
+ if (_implementation_definitions != null)
+ _implementation_definitions.Parent = this;
}
}
@@ -23155,6 +23423,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_using_namespaces=value;
+ if (_using_namespaces != null)
+ _using_namespaces.Parent = this;
}
}
@@ -23331,6 +23601,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_left=value;
+ if (_left != null)
+ _left.Parent = this;
}
}
@@ -23346,6 +23618,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_right=value;
+ if (_right != null)
+ _right.Parent = this;
}
}
@@ -23517,6 +23791,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_defs=value;
+ if (_defs != null)
+ _defs.Parent = this;
}
}
@@ -23532,6 +23808,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_program_code=value;
+ if (_program_code != null)
+ _program_code.Parent = this;
}
}
@@ -23805,6 +24083,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type_name=value;
+ if (_type_name != null)
+ _type_name.Parent = this;
}
}
@@ -24537,6 +24817,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_left=value;
+ if (_left != null)
+ _left.Parent = this;
}
}
@@ -24552,6 +24834,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_right=value;
+ if (_right != null)
+ _right.Parent = this;
}
}
@@ -25046,6 +25330,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_fixed_part=value;
+ if (_fixed_part != null)
+ _fixed_part.Parent = this;
}
}
@@ -25061,6 +25347,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_variant_part=value;
+ if (_variant_part != null)
+ _variant_part.Parent = this;
}
}
@@ -25319,6 +25607,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_parameter_list=value;
+ if (_parameter_list != null)
+ _parameter_list.Parent = this;
}
}
@@ -25334,6 +25624,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_property_type=value;
+ if (_property_type != null)
+ _property_type.Parent = this;
}
}
@@ -25349,6 +25641,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_index_expression=value;
+ if (_index_expression != null)
+ _index_expression.Parent = this;
}
}
@@ -25525,6 +25819,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_names=value;
+ if (_names != null)
+ _names.Parent = this;
}
}
@@ -25540,6 +25836,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type=value;
+ if (_type != null)
+ _type.Parent = this;
}
}
@@ -26149,6 +26447,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -26164,6 +26464,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_format1=value;
+ if (_format1 != null)
+ _format1.Parent = this;
}
}
@@ -26179,6 +26481,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_format2=value;
+ if (_format2 != null)
+ _format2.Parent = this;
}
}
@@ -26363,6 +26667,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_initialization_sect=value;
+ if (_initialization_sect != null)
+ _initialization_sect.Parent = this;
}
}
@@ -26378,6 +26684,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_finalization_sect=value;
+ if (_finalization_sect != null)
+ _finalization_sect.Parent = this;
}
}
@@ -26670,6 +26978,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -26685,6 +26995,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_address=value;
+ if (_address != null)
+ _address.Parent = this;
}
}
@@ -27025,6 +27337,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_file_of_type=value;
+ if (_file_of_type != null)
+ _file_of_type.Parent = this;
}
}
@@ -27358,6 +27672,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_variable=value;
+ if (_variable != null)
+ _variable.Parent = this;
}
}
@@ -27373,6 +27689,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type_name=value;
+ if (_type_name != null)
+ _type_name.Parent = this;
}
}
@@ -27388,6 +27706,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_statements=value;
+ if (_statements != null)
+ _statements.Parent = this;
}
}
@@ -27564,6 +27884,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_variable=value;
+ if (_variable != null)
+ _variable.Parent = this;
}
}
@@ -27579,6 +27901,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type_name=value;
+ if (_type_name != null)
+ _type_name.Parent = this;
}
}
@@ -28068,6 +28392,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_stmt_list=value;
+ if (_stmt_list != null)
+ _stmt_list.Parent = this;
}
}
@@ -28083,6 +28409,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_handlers=value;
+ if (_handlers != null)
+ _handlers.Parent = this;
}
}
@@ -28098,6 +28426,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_else_stmt_list=value;
+ if (_else_stmt_list != null)
+ _else_stmt_list.Parent = this;
}
}
@@ -28363,6 +28693,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_stmt_list=value;
+ if (_stmt_list != null)
+ _stmt_list.Parent = this;
}
}
@@ -28510,6 +28842,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_except_block=value;
+ if (_except_block != null)
+ _except_block.Parent = this;
}
}
@@ -28660,6 +28994,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_stmt_list=value;
+ if (_stmt_list != null)
+ _stmt_list.Parent = this;
}
}
@@ -28675,6 +29011,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_handler=value;
+ if (_handler != null)
+ _handler.Parent = this;
}
}
@@ -28946,6 +29284,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_modulename=value;
+ if (_modulename != null)
+ _modulename.Parent = this;
}
}
@@ -28961,6 +29301,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_name=value;
+ if (_name != null)
+ _name.Parent = this;
}
}
@@ -29447,6 +29789,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -29621,6 +29965,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_count=value;
+ if (_count != null)
+ _count.Parent = this;
}
}
@@ -29636,6 +29982,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_stmt=value;
+ if (_stmt != null)
+ _stmt.Parent = this;
}
}
@@ -29813,6 +30161,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_identifier=value;
+ if (_identifier != null)
+ _identifier.Parent = this;
}
}
@@ -29828,6 +30178,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type_name=value;
+ if (_type_name != null)
+ _type_name.Parent = this;
}
}
@@ -29843,6 +30195,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_in_what=value;
+ if (_in_what != null)
+ _in_what.Parent = this;
}
}
@@ -29858,6 +30212,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_stmt=value;
+ if (_stmt != null)
+ _stmt.Parent = this;
}
}
@@ -30874,6 +31230,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_name=value;
+ if (_name != null)
+ _name.Parent = this;
}
}
@@ -30889,6 +31247,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_params_list=value;
+ if (_params_list != null)
+ _params_list.Parent = this;
}
}
@@ -31394,6 +31754,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type=value;
+ if (_type != null)
+ _type.Parent = this;
}
}
@@ -31409,6 +31771,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_params_list=value;
+ if (_params_list != null)
+ _params_list.Parent = this;
}
}
@@ -31439,6 +31803,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_array_init_expr=value;
+ if (_array_init_expr != null)
+ _array_init_expr.Parent = this;
}
}
@@ -31947,6 +32313,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_names=value;
+ if (_names != null)
+ _names.Parent = this;
}
}
@@ -31962,6 +32330,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_types=value;
+ if (_types != null)
+ _types.Parent = this;
}
}
@@ -32448,6 +32818,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type_def=value;
+ if (_type_def != null)
+ _type_def.Parent = this;
}
}
@@ -32463,6 +32835,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -32631,6 +33005,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type_name=value;
+ if (_type_name != null)
+ _type_name.Parent = this;
}
}
@@ -32789,6 +33165,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_Name=value;
+ if (_Name != null)
+ _Name.Parent = this;
}
}
@@ -32804,6 +33182,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_Directive=value;
+ if (_Directive != null)
+ _Directive.Parent = this;
}
}
@@ -33123,6 +33503,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_var_def=value;
+ if (_var_def != null)
+ _var_def.Parent = this;
}
}
@@ -33284,6 +33666,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_condition=value;
+ if (_condition != null)
+ _condition.Parent = this;
}
}
@@ -33299,6 +33683,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_ret_if_true=value;
+ if (_ret_if_true != null)
+ _ret_if_true.Parent = this;
}
}
@@ -33314,6 +33700,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_ret_if_false=value;
+ if (_ret_if_false != null)
+ _ret_if_false.Parent = this;
}
}
@@ -33495,6 +33883,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -33878,6 +34268,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_defs=value;
+ if (_defs != null)
+ _defs.Parent = this;
}
}
@@ -33893,6 +34285,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_used_units=value;
+ if (_used_units != null)
+ _used_units.Parent = this;
}
}
@@ -34096,6 +34490,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_defs=value;
+ if (_defs != null)
+ _defs.Parent = this;
}
}
@@ -34272,6 +34668,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_max_value=value;
+ if (_max_value != null)
+ _max_value.Parent = this;
}
}
@@ -34443,6 +34841,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_name=value;
+ if (_name != null)
+ _name.Parent = this;
}
}
@@ -34458,6 +34858,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_value=value;
+ if (_value != null)
+ _value.Parent = this;
}
}
@@ -34950,6 +35352,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr1=value;
+ if (_expr1 != null)
+ _expr1.Parent = this;
}
}
@@ -34965,6 +35369,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr2=value;
+ if (_expr2 != null)
+ _expr2.Parent = this;
}
}
@@ -34980,6 +35386,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr3=value;
+ if (_expr3 != null)
+ _expr3.Parent = this;
}
}
@@ -34995,6 +35403,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_stmt=value;
+ if (_stmt != null)
+ _stmt.Parent = this;
}
}
@@ -35195,6 +35605,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_condition=value;
+ if (_condition != null)
+ _condition.Parent = this;
}
}
@@ -35210,6 +35622,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_stmt=value;
+ if (_stmt != null)
+ _stmt.Parent = this;
}
}
@@ -35897,6 +36311,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_lock_object=value;
+ if (_lock_object != null)
+ _lock_object.Parent = this;
}
}
@@ -35912,6 +36328,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_stmt=value;
+ if (_stmt != null)
+ _stmt.Parent = this;
}
}
@@ -36486,6 +36904,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_if_part=value;
+ if (_if_part != null)
+ _if_part.Parent = this;
}
}
@@ -36501,6 +36921,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_elseif_part=value;
+ if (_elseif_part != null)
+ _elseif_part.Parent = this;
}
}
@@ -38213,6 +38635,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_name=value;
+ if (_name != null)
+ _name.Parent = this;
}
}
@@ -38228,6 +38652,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_template_params=value;
+ if (_template_params != null)
+ _template_params.Parent = this;
}
}
@@ -38417,6 +38843,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_template_args=value;
+ if (_template_args != null)
+ _template_args.Parent = this;
}
}
@@ -38573,6 +39001,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type_name=value;
+ if (_type_name != null)
+ _type_name.Parent = this;
}
}
@@ -38728,6 +39158,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -38889,6 +39321,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_qualifier=value;
+ if (_qualifier != null)
+ _qualifier.Parent = this;
}
}
@@ -38904,6 +39338,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type=value;
+ if (_type != null)
+ _type.Parent = this;
}
}
@@ -38919,6 +39355,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_arguments=value;
+ if (_arguments != null)
+ _arguments.Parent = this;
}
}
@@ -39774,6 +40212,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_ident_list=value;
+ if (_ident_list != null)
+ _ident_list.Parent = this;
}
}
@@ -39789,6 +40229,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_return_type=value;
+ if (_return_type != null)
+ _return_type.Parent = this;
}
}
@@ -39804,6 +40246,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_formal_parameters=value;
+ if (_formal_parameters != null)
+ _formal_parameters.Parent = this;
}
}
@@ -39819,6 +40263,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_proc_body=value;
+ if (_proc_body != null)
+ _proc_body.Parent = this;
}
}
@@ -39834,6 +40280,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_proc_definition=value;
+ if (_proc_definition != null)
+ _proc_definition.Parent = this;
}
}
@@ -39849,6 +40297,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_parameters=value;
+ if (_parameters != null)
+ _parameters.Parent = this;
}
}
@@ -39909,6 +40359,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_substituting_node=value;
+ if (_substituting_node != null)
+ _substituting_node.Parent = this;
}
}
@@ -40352,6 +40804,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_f_lambda_def=value;
+ if (_f_lambda_def != null)
+ _f_lambda_def.Parent = this;
}
}
@@ -40367,6 +40821,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_parameters=value;
+ if (_parameters != null)
+ _parameters.Parent = this;
}
}
@@ -41102,6 +41558,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_ex=value;
+ if (_ex != null)
+ _ex.Parent = this;
}
}
@@ -41273,6 +41731,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_name=value;
+ if (_name != null)
+ _name.Parent = this;
}
}
@@ -41288,6 +41748,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -41779,6 +42241,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_ne_list=value;
+ if (_ne_list != null)
+ _ne_list.Parent = this;
}
}
@@ -41809,6 +42273,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_new_ex=value;
+ if (_new_ex != null)
+ _new_ex.Parent = this;
}
}
@@ -42180,6 +42646,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_procdef=value;
+ if (_procdef != null)
+ _procdef.Parent = this;
}
}
@@ -42503,6 +42971,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_left=value;
+ if (_left != null)
+ _left.Parent = this;
}
}
@@ -42518,6 +42988,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_right=value;
+ if (_right != null)
+ _right.Parent = this;
}
}
@@ -42707,6 +43179,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_substitution=value;
+ if (_substitution != null)
+ _substitution.Parent = this;
}
}
@@ -42884,6 +43358,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_elements_type=value;
+ if (_elements_type != null)
+ _elements_type.Parent = this;
}
}
@@ -43083,6 +43559,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_aloneparam=value;
+ if (_aloneparam != null)
+ _aloneparam.Parent = this;
}
}
@@ -43098,6 +43576,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_el=value;
+ if (_el != null)
+ _el.Parent = this;
}
}
@@ -43113,6 +43593,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_res=value;
+ if (_res != null)
+ _res.Parent = this;
}
}
@@ -43307,6 +43789,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_ex=value;
+ if (_ex != null)
+ _ex.Parent = this;
}
}
@@ -43485,6 +43969,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_opname=value;
+ if (_opname != null)
+ _opname.Parent = this;
}
}
@@ -43794,6 +44280,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_tn=value;
+ if (_tn != null)
+ _tn.Parent = this;
}
}
@@ -43809,6 +44297,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_exprs=value;
+ if (_exprs != null)
+ _exprs.Parent = this;
}
}
@@ -43972,6 +44462,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_vars=value;
+ if (_vars != null)
+ _vars.Parent = this;
}
}
@@ -43987,6 +44479,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -44478,6 +44972,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_el=value;
+ if (_el != null)
+ _el.Parent = this;
}
}
@@ -45023,6 +45519,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_left=value;
+ if (_left != null)
+ _left.Parent = this;
}
}
@@ -45038,6 +45536,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_right=value;
+ if (_right != null)
+ _right.Parent = this;
}
}
@@ -45242,6 +45742,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_v=value;
+ if (_v != null)
+ _v.Parent = this;
}
}
@@ -45257,6 +45759,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_from=value;
+ if (_from != null)
+ _from.Parent = this;
}
}
@@ -45272,6 +45776,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_to=value;
+ if (_to != null)
+ _to.Parent = this;
}
}
@@ -45287,6 +45793,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_step=value;
+ if (_step != null)
+ _step.Parent = this;
}
}
@@ -46028,6 +46536,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_ex=value;
+ if (_ex != null)
+ _ex.Parent = this;
}
}
@@ -46186,6 +46696,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_idents=value;
+ if (_idents != null)
+ _idents.Parent = this;
}
}
@@ -46201,6 +46713,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -46935,6 +47449,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_new_expr=value;
+ if (_new_expr != null)
+ _new_expr.Parent = this;
}
}
@@ -47109,6 +47625,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_new_addr_value=value;
+ if (_new_addr_value != null)
+ _new_addr_value.Parent = this;
}
}
@@ -47268,6 +47786,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_left=value;
+ if (_left != null)
+ _left.Parent = this;
}
}
@@ -47283,6 +47803,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_right=value;
+ if (_right != null)
+ _right.Parent = this;
}
}
@@ -47546,6 +48068,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_identifier=value;
+ if (_identifier != null)
+ _identifier.Parent = this;
}
}
@@ -47561,6 +48085,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type=value;
+ if (_type != null)
+ _type.Parent = this;
}
}
@@ -47724,6 +48250,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_left=value;
+ if (_left != null)
+ _left.Parent = this;
}
}
@@ -47739,6 +48267,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_right=value;
+ if (_right != null)
+ _right.Parent = this;
}
}
@@ -47913,6 +48443,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_expr=value;
+ if (_expr != null)
+ _expr.Parent = this;
}
}
@@ -47928,6 +48460,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_case_list=value;
+ if (_case_list != null)
+ _case_list.Parent = this;
}
}
@@ -47943,6 +48477,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_defaultAction=value;
+ if (_defaultAction != null)
+ _defaultAction.Parent = this;
}
}
@@ -48130,6 +48666,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_pattern=value;
+ if (_pattern != null)
+ _pattern.Parent = this;
}
}
@@ -48145,6 +48683,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_case_action=value;
+ if (_case_action != null)
+ _case_action.Parent = this;
}
}
@@ -48160,6 +48700,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_condition=value;
+ if (_condition != null)
+ _condition.Parent = this;
}
}
@@ -48696,6 +49238,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type=value;
+ if (_type != null)
+ _type.Parent = this;
}
}
@@ -49127,6 +49671,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_variables=value;
+ if (_variables != null)
+ _variables.Parent = this;
}
}
@@ -49142,6 +49688,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_deconstruction_target=value;
+ if (_deconstruction_target != null)
+ _deconstruction_target.Parent = this;
}
}
@@ -49313,6 +49861,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_identifier=value;
+ if (_identifier != null)
+ _identifier.Parent = this;
}
}
@@ -49328,6 +49878,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_type=value;
+ if (_type != null)
+ _type.Parent = this;
}
}
@@ -49488,6 +50040,8 @@ namespace PascalABCCompiler.SyntaxTree
set
{
_pattern=value;
+ if (_pattern != null)
+ _pattern.Parent = this;
}
}
diff --git a/Utils/NodesGeneratorNew/NodeGenerator.cs b/Utils/NodesGeneratorNew/NodeGenerator.cs
index 6bae17a3b..1e3d4a168 100644
--- a/Utils/NodesGeneratorNew/NodeGenerator.cs
+++ b/Utils/NodesGeneratorNew/NodeGenerator.cs
@@ -232,7 +232,26 @@ namespace NodeGenerator
}
";
- public static readonly string field_template=
+ public static readonly string syntax_prop_template =
+@" ///
+ ///help_context
+ ///
+ public property_type property_name
+ {
+ get
+ {
+ return field_name;
+ }
+ set
+ {
+ field_name=value;
+ if (field_name != null)
+ field_name.Parent = this;
+ }
+ }
+";
+
+ public static readonly string field_template=
@" protected field_type field_name;";
@@ -268,7 +287,17 @@ namespace NodeGenerator
public static string create_property(string property_type,string property_name,string field_name,string help_context)
{
- var w = change_words(prop_template, new string_repl("property_type", property_type),
+ return CreatePropertyFromTemplate(prop_template, property_type, property_name, field_name, help_context);
+ }
+
+ public static string create_property_for_syntax_node_field(string property_type, string property_name, string field_name, string help_context)
+ {
+ return CreatePropertyFromTemplate(syntax_prop_template, property_type, property_name, field_name, help_context);
+ }
+
+ private static string CreatePropertyFromTemplate(string template, string property_type, string property_name, string field_name, string help_context)
+ {
+ var w = change_words(template, new string_repl("property_type", property_type),
new string_repl("property_name", property_name), new string_repl("field_name", field_name),
new string_repl("help_context", help_context));
/*if (property_type.ToLower().StartsWith("list<"))
@@ -276,7 +305,7 @@ namespace NodeGenerator
w = change_words(w, new string_repl("get", "protected get"));
}*/
return w;
- }
+ }
public static string create_field(string field_type,string field_name)
{
@@ -568,9 +597,9 @@ namespace NodeGenerator
}
}
- public void generate_code_property(StreamWriter sw,node_info ni,HelpStorage hst)
+ public virtual void generate_code_property(StreamWriter sw,node_info ni,HelpStorage hst)
{
- string prop=text_consts.create_property(field_type_name,property_name,field_code_name,
+ string prop=text_consts.create_property_for_syntax_node_field(field_type_name,property_name,field_code_name,
hst.get_help_context(ni.node_name+"."+field_name).help_context);
//sw.WriteLine();
sw.WriteLine(prop);
@@ -875,6 +904,14 @@ namespace NodeGenerator
}
}
+ public override void generate_code_property(StreamWriter sw, node_info ni, HelpStorage hst)
+ {
+ string prop = text_consts.create_property(field_type_name, property_name, field_code_name,
+ hst.get_help_context(ni.node_name + "." + field_name).help_context);
+
+ sw.WriteLine(prop);
+ }
+
public override void generate_clone_code(NodeWriter writer, string variableName)
{
var destination = variableName + "." + field_name;
diff --git a/Utils/NodesGeneratorNew/NodesGenerator.csproj b/Utils/NodesGeneratorNew/NodesGenerator.csproj
index d603d740d..6739c057b 100644
--- a/Utils/NodesGeneratorNew/NodesGenerator.csproj
+++ b/Utils/NodesGeneratorNew/NodesGenerator.csproj
@@ -27,7 +27,7 @@
3.5
- v4.5.2
+ v4.6.1
false
опубликовать\
@@ -93,6 +93,27 @@
prompt
false
+
+ true
+ bin\x86\Debug\
+ DEBUG;TRACE
+ 285212672
+ 4096
+ full
+ x86
+ prompt
+ MinimumRecommendedRules.ruleset
+
+
+ bin\x86\Release\
+ TRACE
+ 285212672
+ true
+ 4096
+ x86
+ prompt
+ MinimumRecommendedRules.ruleset
+
False
@@ -210,6 +231,7 @@
+
diff --git a/Utils/NodesGeneratorNew/NodesGenerator.csproj.user b/Utils/NodesGeneratorNew/NodesGenerator.csproj.user
index 368064923..0bc56a612 100644
--- a/Utils/NodesGeneratorNew/NodesGenerator.csproj.user
+++ b/Utils/NodesGeneratorNew/NodesGenerator.csproj.user
@@ -64,4 +64,7 @@
false
+
+ true
+
\ No newline at end of file
diff --git a/Utils/NodesGeneratorNew/NodesGenerator.sln b/Utils/NodesGeneratorNew/NodesGenerator.sln
index da9589497..4aa5e3d89 100644
--- a/Utils/NodesGeneratorNew/NodesGenerator.sln
+++ b/Utils/NodesGeneratorNew/NodesGenerator.sln
@@ -1,6 +1,8 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 15
+VisualStudioVersion = 15.0.27428.2037
+MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NodesGenerator", "NodesGenerator.csproj", "{1C27130D-43F9-40F9-A7EF-DED5F6C6C9CB}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NodesGenerator_old", "NodesGenerator_old\NodesGenerator_old.csproj", "{172069EF-39F3-44C6-86C0-01CEC24691B6}"
@@ -8,19 +10,32 @@ EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
+ Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
+ Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{1C27130D-43F9-40F9-A7EF-DED5F6C6C9CB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1C27130D-43F9-40F9-A7EF-DED5F6C6C9CB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1C27130D-43F9-40F9-A7EF-DED5F6C6C9CB}.Debug|x86.ActiveCfg = Debug|x86
+ {1C27130D-43F9-40F9-A7EF-DED5F6C6C9CB}.Debug|x86.Build.0 = Debug|x86
{1C27130D-43F9-40F9-A7EF-DED5F6C6C9CB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1C27130D-43F9-40F9-A7EF-DED5F6C6C9CB}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1C27130D-43F9-40F9-A7EF-DED5F6C6C9CB}.Release|x86.ActiveCfg = Release|x86
+ {1C27130D-43F9-40F9-A7EF-DED5F6C6C9CB}.Release|x86.Build.0 = Release|x86
{172069EF-39F3-44C6-86C0-01CEC24691B6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{172069EF-39F3-44C6-86C0-01CEC24691B6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {172069EF-39F3-44C6-86C0-01CEC24691B6}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {172069EF-39F3-44C6-86C0-01CEC24691B6}.Debug|x86.Build.0 = Debug|Any CPU
{172069EF-39F3-44C6-86C0-01CEC24691B6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{172069EF-39F3-44C6-86C0-01CEC24691B6}.Release|Any CPU.Build.0 = Release|Any CPU
+ {172069EF-39F3-44C6-86C0-01CEC24691B6}.Release|x86.ActiveCfg = Release|Any CPU
+ {172069EF-39F3-44C6-86C0-01CEC24691B6}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {B9166D14-8866-4DD1-97FC-5EAC353191C9}
+ EndGlobalSection
EndGlobal
diff --git a/Utils/NodesGeneratorNew/NodesGenerator_old/bin/Debug/NodesGenerator.exe b/Utils/NodesGeneratorNew/NodesGenerator_old/bin/Debug/NodesGenerator.exe
index 4dd08bc7d..dfee34cf4 100644
Binary files a/Utils/NodesGeneratorNew/NodesGenerator_old/bin/Debug/NodesGenerator.exe and b/Utils/NodesGeneratorNew/NodesGenerator_old/bin/Debug/NodesGenerator.exe differ
diff --git a/Utils/NodesGeneratorNew/NodesGenerator_old/bin/Debug/NodesGenerator.pdb b/Utils/NodesGeneratorNew/NodesGenerator_old/bin/Debug/NodesGenerator.pdb
index 8aa3d4eb1..3987b1ca5 100644
Binary files a/Utils/NodesGeneratorNew/NodesGenerator_old/bin/Debug/NodesGenerator.pdb and b/Utils/NodesGeneratorNew/NodesGenerator_old/bin/Debug/NodesGenerator.pdb differ
diff --git a/Utils/NodesGeneratorNew/app.config b/Utils/NodesGeneratorNew/app.config
index de8289320..0dff63a07 100644
--- a/Utils/NodesGeneratorNew/app.config
+++ b/Utils/NodesGeneratorNew/app.config
@@ -1,3 +1,3 @@
-
+