1 // -*- c++ -*- 2 // Package : omniidl 3 // idlvalidate.h Created on: 1999/10/26 4 // Author : Duncan Grisby (dpg1) 5 // 6 // Copyright (C) 1999 AT&T Laboratories Cambridge 7 // 8 // This file is part of omniidl. 9 // 10 // omniidl is free software; you can redistribute it and/or modify it 11 // under the terms of the GNU General Public License as published by 12 // the Free Software Foundation; either version 2 of the License, or 13 // (at your option) any later version. 14 // 15 // This program is distributed in the hope that it will be useful, 16 // but WITHOUT ANY WARRANTY; without even the implied warranty of 17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 18 // General Public License for more details. 19 // 20 // You should have received a copy of the GNU General Public License 21 // along with this program. If not, see http://www.gnu.org/licenses/ 22 // 23 // Description: 24 // 25 // Visitor object to validate the tree 26 27 #ifndef _idlvalidate_h_ 28 #define _idlvalidate_h_ 29 30 #include <idlvisitor.h> 31 32 // AstValidateVisitor currently just issues warnings if interfaces or 33 // values are forward declared but never fully declared 34 35 class AstValidateVisitor : public AstVisitor { 36 public: AstValidateVisitor()37 AstValidateVisitor() {} ~AstValidateVisitor()38 virtual ~AstValidateVisitor() {} 39 40 void visitAST (AST* a); 41 void visitModule (Module* m); 42 void visitInterface (Interface* i); 43 void visitForward (Forward* f); 44 void visitValueForward (ValueForward* f); 45 void visitStructForward (StructForward* f); 46 void visitUnionForward (UnionForward* f); 47 }; 48 49 50 51 52 #endif // _idlvalidate_h_ 53