1 #ifndef _AST_STRUCTURE_FWD_AST_STRUCTURE_FWD_HH
2 #define _AST_STRUCTURE_FWD_AST_STRUCTURE_FWD_HH
7 // Representation of a forward structure declaration.
9 class TAO_IDL_FE_Export AST_StructureFwd
: public virtual AST_Type
12 AST_StructureFwd (AST_Structure
*full_defn
,
15 virtual ~AST_StructureFwd ();
17 AST_Structure
*full_definition ();
18 void set_full_definition (AST_Structure
*nfd
);
20 virtual bool is_defined ();
21 void set_as_defined ();
24 virtual void destroy ();
27 virtual void dump (ACE_OSTREAM_TYPE
&);
30 virtual int ast_accept (ast_visitor
*visitor
);
32 // Is this decl a forward declared type (Yes)
33 virtual bool is_fwd ();
35 // We don't actually want the forward declaration,
36 // but want to return the full definition member,
37 // whether defined yet or not.
38 virtual AST_Decl
*adjust_found (bool ignore_fwd
, bool full_def_only
);
40 static AST_Decl::NodeType
const NT
;
43 AST_Structure
*pd_full_definition
;
44 // The structure this is a forward declaration of.
47 // Checking the member above isn't good enough.
50 #endif // _AST_STRUCTURE_FWD_AST_STRUCTURE_FWD_HH