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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
// -*- C++ -*-
// $Id$
#include "PSDL_Exception_Scope.h"
ACE_RCSID (PSS, PSDL_Exception_Scope, "$Id$")
TAO_PSDL_Exception_Scope::TAO_PSDL_Exception_Scope (TAO_PSDL_Scope *parent_scope)
: scope_map_ (),
parent_scope_ (parent_scope)
{
// Constructor.
}
int
TAO_PSDL_Exception_Scope::add_member_decl (ACE_CString identifier,
ACE_CString identifier_type)
{
// Add member declarations to this scope.
return TAO_PSDL_Scope::instance ()->add_member_decl_to_scope (identifier,
identifier_type,
this);
}
void
TAO_PSDL_Exception_Scope::dump (CORBA::ULong depth)
{
depth = depth + 5;
for (Scope_Map_Iterator i = this->scope_map_.begin ();
i != this->scope_map_.end ();
++i)
{
this->print_depth (depth);
ACE_DEBUG ((LM_DEBUG,
"%s (%s)\n",
(*i).ext_id_.c_str (), (*i).int_id_));
}
}
int
TAO_PSDL_Exception_Scope::find (const ACE_CString &identifier_name,
ACE_CString &identifier_type)
{
for (Scope_Map_Iterator i = this->scope_map_.begin ();
i != this->scope_map_.end ();
++i)
{
if (ACE_OS::strcmp (identifier_name.c_str (), (*i).ext_id_.c_str ()) == 0)
{
identifier_type = (*i).int_id_->identifier_type ();
return 0;
}
else
{
if ((*i).int_id_->find (identifier_name,
identifier_type) == 0)
{
return 0;
}
}
}
return -1;
}
int
TAO_PSDL_Exception_Scope::find (const ACE_CString &identifier_name)
{
for (Scope_Map_Iterator i = this->scope_map_.begin ();
i != this->scope_map_.end ();
++i)
{
if (ACE_OS::strcmp (identifier_name.c_str (), (*i).ext_id_.c_str ()) == 0)
{
return 0;
}
else
{
if ((*i).int_id_->find (identifier_name) == 0)
{
// #@@@@ deal
// identifier_type = identifier_info->type;
return 0;
}
}
}
return -1;
}
TAO_PSDL_Scope *
TAO_PSDL_Exception_Scope::parent_scope (void)
{
return this->parent_scope_;
}
Scope_Map *
TAO_PSDL_Exception_Scope::scope_map (void)
{
return &this->scope_map_;
}
ACE_CString
TAO_PSDL_Exception_Scope::identifier_type (void)
{
return this->identifier_type_;
}
ACE_CString
TAO_PSDL_Exception_Scope::module_name (void)
{
return this->module_name_;
}
ACE_CString
TAO_PSDL_Exception_Scope::interface_name (void)
{
return this->interface_name_;
}
|