Merge pull request #1844 from jrw972/monterey
[ACE_TAO.git] / TAO / TAO_IDL / ast / ast_connector.cpp
blob9d997d41824dee55e8de936723e005b7cd8908b7
1 #include "ast_connector.h"
2 #include "ast_visitor.h"
3 #include "utl_identifier.h"
4 #include "utl_indenter.h"
5 #include "utl_err.h"
6 #include "global_extern.h"
8 AST_Decl::NodeType const
9 AST_Connector::NT = AST_Decl::NT_connector;
11 AST_Connector::AST_Connector (
12 UTL_ScopedName *n,
13 AST_Connector *base_connector)
14 : COMMON_Base (false,
15 false),
16 AST_Decl (AST_Decl::NT_connector,
17 n),
18 AST_Type (AST_Decl::NT_connector,
19 n),
20 UTL_Scope (AST_Decl::NT_connector),
21 AST_Interface (n,
26 false,
27 false),
28 AST_Component (n,
29 base_connector,
35 if (!this->imported ())
37 idl_global->connector_seen_ = true;
41 AST_Connector::~AST_Connector (void)
45 AST_Connector *
46 AST_Connector::base_connector (void) const
48 return dynamic_cast<AST_Connector*> (this->pd_base_component);
51 void
52 AST_Connector::destroy (void)
54 this->AST_Component::destroy ();
57 void
58 AST_Connector::dump (ACE_OSTREAM_TYPE &o)
60 this->dump_i (o, "connector ");
62 this->local_name ()->dump (o);
64 this->dump_i (o, " ");
66 if (this->pd_base_component != 0)
68 this->dump_i (o, ": ");
69 this->pd_base_component->local_name ()->dump (o);
72 this->dump_i (o, " {\n");
74 UTL_Scope::dump (o);
75 idl_global->indent ()->skip_to (o);
77 this->dump_i (o, "}");
80 int
81 AST_Connector::ast_accept (ast_visitor *visitor)
83 return visitor->visit_connector (this);
86 IMPL_NARROW_FROM_DECL (AST_Connector)
87 IMPL_NARROW_FROM_SCOPE (AST_Connector)