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 void SetToken(TEnum node)
        {
            if (_token_ != null)
            {
                _token_.Parent(null);
            }

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

                node.Parent(this);
            }

            _token_ = node;
        }
 public virtual void CaseTEnum(TEnum node)
 {
     DefaultCase(node);
 }
 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 override void CaseTEnum(TEnum node)
 {
     index = 39;
 }