summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/include/ast_visitor_tmpl_module_ref.h
blob: 4b45f2a5abfa6d857a87dfbd7a7aacf3faff95b7 (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

/* -*- c++ -*- */
//=============================================================================
/**
 *  @file    ast_visitor_tmpl_module_ref.h
 *
 *  This visitor creates nodes resulting from the reference
 *  to one inside another, and adds these nodes to the AST.
 *
 *  @author Jeff Parsons
 */
//=============================================================================


#ifndef TAO_AST_VISITOR_TMPL_MODULE_REF_H
#define TAO_AST_VISITOR_TMPL_MODULE_REF_H

#include "ast_visitor_tmpl_module_inst.h"

/**
 * Adds implied IDL code to the AST related to the
 * alias of a template module. This class reuses all
 * the methods from the base class except the no-op
 * visit_template_module_ref(), which it overrides.
 */
class ast_visitor_tmpl_module_ref
  : public ast_visitor_tmpl_module_inst
{
public:
  ast_visitor_tmpl_module_ref (ast_visitor_context *ctx);

  virtual ~ast_visitor_tmpl_module_ref (void);

  virtual int visit_template_module_ref (AST_Template_Module_Ref *node);
};

#endif // TAO_AST_VISITOR_TMPL_MODULE_INST_H