Merge pull request #1844 from jrw972/monterey
[ACE_TAO.git] / TAO / TAO_IDL / be_include / be_uses.h
blob8384db531dde404bac1144f059d942fc617e3085
1 // -*- C++ -*-
2 #ifndef BE_USES_H
3 #define BE_USES_H
5 #include "ast_uses.h"
7 #include "be_field.h"
9 class be_interface;
10 class be_visitor;
12 class be_uses : public virtual AST_Uses,
13 public virtual be_field
15 public:
16 be_uses (UTL_ScopedName *n,
17 AST_Type *uses_type,
18 bool is_multiple);
20 virtual ~be_uses (void);
22 // Non-virtual override of frontend method.
23 be_type *uses_type (void) const;
25 // Narrowing.
26 DEF_NARROW_FROM_DECL(be_uses);
28 // Visiting.
29 virtual int accept (be_visitor *visitor);
31 // Cleanup.
32 virtual void destroy (void);
34 void original_uses (be_uses *original_uses);
35 // Sets the original uses from which this one was created,
36 // applies only to implied IDL.
38 be_uses *original_uses ();
39 // Returns the original uses from which this one was created,
40 // applies only to implied IDL
42 private:
43 be_uses *original_uses_;
46 #endif // BE_USES_H