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