Merge pull request #1844 from jrw972/monterey
[ACE_TAO.git] / TAO / TAO_IDL / be / be_interface_fwd.cpp
bloba7805b5418cb4f20197894e9fdb3c719a3732219
2 //=============================================================================
3 /**
4 * @file be_interface_fwd.cpp
6 * Extension of class AST_InterfaceFwd that provides additional means for C++
7 * mapping of an interface.
9 * @author Copyright 1994-1995 by Sun Microsystems
10 * @author Inc. and Aniruddha Gokhale
12 //=============================================================================
14 #include "be_interface_fwd.h"
15 #include "be_interface.h"
16 #include "be_visitor.h"
17 #include "ast_interface.h"
19 be_interface_fwd::be_interface_fwd (AST_Interface *dummy,
20 UTL_ScopedName *n)
21 : COMMON_Base (dummy->is_local (),
22 dummy->is_abstract ()),
23 AST_Decl (AST_Decl::NT_interface_fwd,
24 n),
25 AST_Type (AST_Decl::NT_interface_fwd,
26 n),
27 AST_InterfaceFwd (dummy,
28 n),
29 be_decl (AST_Decl::NT_interface_fwd,
30 n),
31 be_type (AST_Decl::NT_interface_fwd,
34 // Always the case.
35 this->size_type (AST_Type::VARIABLE);
38 be_interface_fwd::~be_interface_fwd (void)
42 void
43 be_interface_fwd::seen_in_sequence (bool val)
45 this->be_type::seen_in_sequence (val);
46 be_interface *fd =
47 dynamic_cast<be_interface*> (this->full_definition ());
48 fd->seen_in_sequence (val);
51 void
52 be_interface_fwd::seen_in_operation (bool val)
54 this->be_type::seen_in_operation (val);
55 be_interface *fd =
56 dynamic_cast<be_interface*> (this->full_definition ());
57 fd->seen_in_operation (val);
60 void
61 be_interface_fwd::destroy (void)
63 this->be_type::destroy ();
64 this->AST_InterfaceFwd::destroy ();
67 int
68 be_interface_fwd::accept (be_visitor *visitor)
70 return visitor->visit_interface_fwd (this);
75 IMPL_NARROW_FROM_DECL (be_interface_fwd)