public void SetStatic(TStatic node)
        {
            if (_static_ != null)
            {
                _static_.Parent(null);
            }

            if (node != null)
            {
                if (node.Parent() != null)
                {
                    node.Parent().RemoveChild(node);
                }

                node.Parent(this);
            }

            _static_ = node;
        }
 internal override void RemoveChild(Node child)
 {
     if (_visibility_modifier_ == child)
     {
         _visibility_modifier_ = null;
         return;
     }
     if (_static_ == child)
     {
         _static_ = null;
         return;
     }
     if (_ref_ == child)
     {
         _ref_ = null;
         return;
     }
     if (_out_ == child)
     {
         _out_ = null;
         return;
     }
     if (_const_ == child)
     {
         _const_ = null;
         return;
     }
     if (_type_ == child)
     {
         _type_ = null;
         return;
     }
     if (_name_ == child)
     {
         _name_ = null;
         return;
     }
     if (_init_ == child)
     {
         _init_ = null;
         return;
     }
 }
 internal override void RemoveChild(Node child)
 {
     if (_visibility_modifier_ == child)
     {
         _visibility_modifier_ = null;
         return;
     }
     if (_static_ == child)
     {
         _static_ = null;
         return;
     }
     if (_token_ == child)
     {
         _token_ = null;
         return;
     }
     if (_name_ == child)
     {
         _name_ = null;
         return;
     }
     if (_values_.Contains(child))
     {
         _values_.Remove(child);
         return;
     }
     if (_end_token_ == child)
     {
         _end_token_ = null;
         return;
     }
 }
 public AFieldDecl(
         PVisibilityModifier _visibility_modifier_,
         TStatic _static_,
         TConst _const_,
         PType _type_,
         TIdentifier _name_,
         PExp _init_
 )
 {
     SetVisibilityModifier(_visibility_modifier_);
     SetStatic(_static_);
     SetConst(_const_);
     SetType(_type_);
     SetName(_name_);
     SetInit(_init_);
 }
 public AALocalDecl(
         PVisibilityModifier _visibility_modifier_,
         TStatic _static_,
         TRef _ref_,
         TOut _out_,
         TConst _const_,
         PType _type_,
         TIdentifier _name_,
         PExp _init_
 )
 {
     SetVisibilityModifier(_visibility_modifier_);
     SetStatic(_static_);
     SetRef(_ref_);
     SetOut(_out_);
     SetConst(_const_);
     SetType(_type_);
     SetName(_name_);
     SetInit(_init_);
 }
 public AEnumDecl(
         PVisibilityModifier _visibility_modifier_,
         TStatic _static_,
         TEnum _token_,
         TIdentifier _name_,
         IList _values_,
         TRBrace _end_token_
 )
 {
     SetVisibilityModifier(_visibility_modifier_);
     SetStatic(_static_);
     SetToken(_token_);
     SetName(_name_);
     this._values_ = new TypedList(new Values_Cast(this));
     this._values_.Clear();
     this._values_.AddAll(_values_);
     SetEndToken(_end_token_);
 }
 public ATypedefDecl(
         PVisibilityModifier _visibility_modifier_,
         TStatic _static_,
         TTypedef _token_,
         PType _type_,
         PType _name_
 )
 {
     SetVisibilityModifier(_visibility_modifier_);
     SetStatic(_static_);
     SetToken(_token_);
     SetType(_type_);
     SetName(_name_);
 }
 internal override void RemoveChild(Node child)
 {
     if (_visibility_modifier_ == child)
     {
         _visibility_modifier_ = null;
         return;
     }
     if (_static_ == child)
     {
         _static_ = null;
         return;
     }
     if (_token_ == child)
     {
         _token_ = null;
         return;
     }
     if (_type_ == child)
     {
         _type_ = null;
         return;
     }
     if (_name_ == child)
     {
         _name_ = null;
         return;
     }
 }
 internal override void RemoveChild(Node child)
 {
     if (_visibility_modifier_ == child)
     {
         _visibility_modifier_ = null;
         return;
     }
     if (_static_ == child)
     {
         _static_ = null;
         return;
     }
     if (_return_type_ == child)
     {
         _return_type_ = null;
         return;
     }
     if (_token_ == child)
     {
         _token_ = null;
         return;
     }
     if (_operator_ == child)
     {
         _operator_ = null;
         return;
     }
     if (_formals_.Contains(child))
     {
         _formals_.Remove(child);
         return;
     }
     if (_block_ == child)
     {
         _block_ = null;
         return;
     }
 }
 public APropertyDecl(
         PVisibilityModifier _visibility_modifier_,
         TStatic _static_,
         PType _type_,
         TIdentifier _name_,
         PBlock _getter_,
         PBlock _setter_
 )
 {
     SetVisibilityModifier(_visibility_modifier_);
     SetStatic(_static_);
     SetType(_type_);
     SetName(_name_);
     SetGetter(_getter_);
     SetSetter(_setter_);
 }
 public AOperatorDecl(
         PVisibilityModifier _visibility_modifier_,
         TStatic _static_,
         PType _return_type_,
         TOperator _token_,
         PBinop _operator_,
         IList _formals_,
         PBlock _block_
 )
 {
     SetVisibilityModifier(_visibility_modifier_);
     SetStatic(_static_);
     SetReturnType(_return_type_);
     SetToken(_token_);
     SetOperator(_operator_);
     this._formals_ = new TypedList(new Formals_Cast(this));
     this._formals_.Clear();
     this._formals_.AddAll(_formals_);
     SetBlock(_block_);
 }
 internal override void RemoveChild(Node child)
 {
     if (_visibility_modifier_ == child)
     {
         _visibility_modifier_ = null;
         return;
     }
     if (_trigger_ == child)
     {
         _trigger_ = null;
         return;
     }
     if (_static_ == child)
     {
         _static_ = null;
         return;
     }
     if (_native_ == child)
     {
         _native_ = null;
         return;
     }
     if (_inline_ == child)
     {
         _inline_ = null;
         return;
     }
     if (_delegate_ == child)
     {
         _delegate_ = null;
         return;
     }
     if (_return_type_ == child)
     {
         _return_type_ = null;
         return;
     }
     if (_name_ == child)
     {
         _name_ = null;
         return;
     }
     if (_formals_.Contains(child))
     {
         _formals_.Remove(child);
         return;
     }
     if (_block_ == child)
     {
         _block_ = null;
         return;
     }
 }
 public AMethodDecl(
         PVisibilityModifier _visibility_modifier_,
         TTrigger _trigger_,
         TStatic _static_,
         TNative _native_,
         TInline _inline_,
         TDelegate _delegate_,
         PType _return_type_,
         TIdentifier _name_,
         IList _formals_,
         PBlock _block_
 )
 {
     SetVisibilityModifier(_visibility_modifier_);
     SetTrigger(_trigger_);
     SetStatic(_static_);
     SetNative(_native_);
     SetInline(_inline_);
     SetDelegate(_delegate_);
     SetReturnType(_return_type_);
     SetName(_name_);
     this._formals_ = new TypedList(new Formals_Cast(this));
     this._formals_.Clear();
     this._formals_.AddAll(_formals_);
     SetBlock(_block_);
 }
 public virtual void CaseTStatic(TStatic node)
 {
     DefaultCase(node);
 }
 public override void CaseTStatic(TStatic node)
 {
     index = 8;
 }