public object VisitClassDeclVAST(ClassDeclVAST v,object arg)
 {
     if ((identificadores.retrieve(v.ident.ident.value)==null)&&(tipos.retrieve(v.ident.ident.value)==null)
         &&(arreglos.retrieve(v.ident.ident.value)==null)){
         identificadores.enter(v.ident.ident.value,"",v);
         v.declaraciones.visit(this,"clase");
     }
     else{
         errores_contextuales+="Error Contextual: El identificador \""+v.ident.ident.value+"\" ya ha sido utilizado.\n";
     }
     return null;
 }
 public object VisitClassDeclVAST(ClassDeclVAST v,object arg)
 {
     TypeBuilder tipo=((TypeBuilder)arg).DefineNestedType(v.ident.ident.value);
     clases.Add(tipo);
     v.declaraciones.visit(this,tipo);
     return null;
 }
        public object VisitClassDeclVAST(ClassDeclVAST v,object arg)
        {
            int numaux = ((int)arg);
            printtab(numaux);
            resultado = resultado +"\n"+(v.GetType());

            if (v.declaraciones != null)
                v.declaraciones.visit(this,numaux+1);
            else{
                printtab(numaux+1);
                resultado = resultado +"\n"+("NULL");
            }
            if(v.ident != null){
                v.ident.visit(this,numaux+1);
            }
            else{
                printtab(numaux+1);
                resultado = resultado +"\n"+("NULL");
            }
            return null;
        }