Public Types | |
typedef cmt_vector<Libmap> | LibmapVector |
Public Methods | |
Libmap () | |
void | add_trigger (const cmt_string& trigger_name) |
void | add_use (const cmt_string& use_name) |
int | operator!= (const Libmap& other) const |
int | operator== (const Libmap& other) const |
void | set_used () |
Public Attributes | |
cmt_string | name |
cmt_string | package |
CmtSystem::cmt_string_vector | triggers |
bool | used |
CmtSystem::cmt_string_vector | uses |
Static Public Methods | |
Libmap& | find (const cmt_string& name, const cmt_string& package) |
Libmap& | add (const cmt_string& name, const cmt_string& package) |
LibmapVector& | libmaps () |
Libmap& | find_with_trigger (const cmt_string& name) |
Libmap& | null () |
|
Definition at line 25 of file cmt_triggers.cxx. |
|
Definition at line 95 of file cmt_triggers.cxx. 00095 : used (false) 00096 { 00097 } |
|
Definition at line 70 of file cmt_triggers.cxx. Referenced by TriggerAnalyzer::filter(). 00071 { 00072 { 00073 Libmap& libmap = find (name, package); 00074 00075 if (libmap != null ()) return (libmap); 00076 } 00077 00078 LibmapVector& table = libmaps (); 00079 00080 Libmap& libmap = table.add (); 00081 00082 libmap.name = name; 00083 libmap.package = package; 00084 00085 return (libmap); 00086 } |
|
Definition at line 99 of file cmt_triggers.cxx. Referenced by TriggerAnalyzer::filter(). 00100 { 00101 cmt_string& trigger = triggers.add (); 00102 00103 trigger = trigger_name; 00104 } |
|
Definition at line 106 of file cmt_triggers.cxx. Referenced by TriggerAnalyzer::filter(). 00107 { 00108 cmt_string& use = uses.add (); 00109 00110 use = use_name; 00111 } |
|
Definition at line 51 of file cmt_triggers.cxx. Referenced by add(), and set_used(). 00052 { 00053 LibmapVector& table = libmaps (); 00054 00055 for (int i = 0; i < table.size (); i++) 00056 { 00057 Libmap& libmap = table[i]; 00058 00059 #ifdef USE_PACKAGE_SCOPE 00060 if ((name == libmap.name) && 00061 (package == libmap.package)) return (libmap); 00062 #else 00063 if (name == libmap.name) return (libmap); 00064 #endif 00065 } 00066 00067 return (null ()); 00068 } |
|
Definition at line 113 of file cmt_triggers.cxx. Referenced by DependencyAnalyzer::filter(). 00114 { 00115 LibmapVector& table = libmaps (); 00116 00117 for (int i = 0; i < table.size (); i++) 00118 { 00119 Libmap& libmap = table[i]; 00120 00121 for (int j = 0; j < libmap.triggers.size (); j++) 00122 { 00123 const cmt_string& trigger = libmap.triggers[j]; 00124 00125 if (name == trigger) return (libmap); 00126 } 00127 } 00128 00129 return (null ()); 00130 } |
|
Definition at line 88 of file cmt_triggers.cxx. Referenced by add(), ApplicationAnalyzer::end(), LibraryAnalyzer::end(), find(), and find_with_trigger(). 00089 { 00090 static cmt_vector<Libmap> table; 00091 00092 return (table); 00093 } |
|
Definition at line 132 of file cmt_triggers.cxx. Referenced by add(), DependencyAnalyzer::filter(), find(), find_with_trigger(), and set_used(). 00133 { 00134 static Libmap null_libmap; 00135 00136 return (null_libmap); 00137 } |
|
Definition at line 139 of file cmt_triggers.cxx. 00140 { 00141 return (this != &other); 00142 } |
|
Definition at line 144 of file cmt_triggers.cxx. 00145 { 00146 return (this == &other); 00147 } |
|
Definition at line 149 of file cmt_triggers.cxx. Referenced by ApplicationAnalyzer::end(), and LibraryAnalyzer::end(). 00150 { 00151 if (used) return; 00152 00153 used = true; 00154 00155 cmt_string package_name; 00156 cmt_string use_name; 00157 00158 for (int i = 0; i < uses.size (); i++) 00159 { 00160 const cmt_string& use = uses[i]; 00161 00162 int pos = use.find ("::"); 00163 00164 if (pos == cmt_string::npos) 00165 { 00166 package_name = ""; 00167 use_name = use; 00168 } 00169 else 00170 { 00171 use.substr (0, pos, package_name); 00172 use.substr (pos + 2, use_name); 00173 00174 Libmap& libmap = find (use_name, package_name); 00175 if (libmap != null ()) 00176 { 00177 libmap.set_used (); 00178 } 00179 } 00180 } 00181 } |
|
Definition at line 42 of file cmt_triggers.cxx. |
|
Definition at line 43 of file cmt_triggers.cxx. |
|
Definition at line 44 of file cmt_triggers.cxx. |
|
Definition at line 45 of file cmt_triggers.cxx. |
|
Definition at line 46 of file cmt_triggers.cxx. |