summaryrefslogtreecommitdiff
path: root/TAO_IDL/include/ast_uses.h
blob: 5de26d7499738ab08b16f668db7cb8e8fafe3c2f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
// -*- C++ -*-
// $Id$

#ifndef AST_USES_H
#define AST_USES_H

#include "ast_field.h"

class TAO_IDL_FE_Export AST_Uses : public virtual AST_Field
{
public:
  AST_Uses (UTL_ScopedName *n,
            AST_Type *uses_type,
            bool is_multiple);

  virtual ~AST_Uses (void);

  // Data Accessors.
  AST_Type *uses_type (void) const;
  bool is_multiple (void) const;

  // Narrowing.
  DEF_NARROW_FROM_DECL(AST_Uses);

  // AST Dumping.
  virtual void dump (ACE_OSTREAM_TYPE &o);

  // Visiting.
  virtual int ast_accept (ast_visitor *visitor);

  // Cleanup.
  virtual void destroy (void);

  static AST_Decl::NodeType const NT;

private:
  bool is_multiple_;
};

#endif // AST_USES_H