#include
Collaboration diagram for Script:
Public Types |
|
typedef cmt_vector< Script >? | ScriptVector |
Public Methods |
|
? | Script () |
? | ~Script () |
int? | print (PrintMode mode, const Use *use) |
Static Public Methods |
|
void? | action (const CmtSystem::cmt_string_vector &words, ScriptType type, Use *use) |
Script *? | find (const cmt_string &name, Use *use) |
Script *? | add (const cmt_string &name, ScriptType type, Use *use) |
void? | all_print_clean (PrintMode mode) |
void? | all_print (PrintMode mode) |
void? | clear_all () |
Public Attributes |
|
cmt_string? | name |
ScriptType? | type |
|
? |
Definition at line 16 of file cmt_script.h. |
|
? |
Definition at line 186 of file cmt_script.cxx. 00187 { 00188 } |
|
? |
Definition at line 191 of file cmt_script.cxx. 00192 { 00193 } |
|
? |
Definition at line 22 of file cmt_script.cxx. References add(), Use::current(), name, ScriptType, and type. Referenced by KwdSetupScript::action(), and KwdCleanupScript::action(). 00025 { 00026 cmt_string name; 00027 Script* script; 00028 00029 if (use == 0) use = &(Use::current()); 00030 00031 name = words[1]; 00032 if (name == "") return; 00033 00034 script = add (name, type, use); 00035 } |
|
? |
Definition at line 62 of file cmt_script.cxx. References cmt_vector< Script >::add(), Use::current(), cmt_string::erase(), find(), cmt_string::find(), name, cmt_string::npos, Use::scripts, ScriptType, and type. Referenced by action(). 00063 { 00064 cmt_string short_name = name; 00065 00066 if (use == 0) use = &(Use::current()); 00067 00068 int pos; 00069 00070 pos = short_name.find (".csh"); 00071 if (pos != cmt_string::npos) 00072 { 00073 short_name.erase (pos); 00074 } 00075 00076 pos = short_name.find (".sh"); 00077 if (pos != cmt_string::npos) 00078 { 00079 short_name.erase (pos); 00080 } 00081 00082 { 00083 Script* script; 00084 00085 if (short_name == "") return (0); 00086 script = find (short_name, use); 00087 if (script != 0) 00088 { 00089 script->type = type; 00090 return (script); 00091 } 00092 } 00093 00094 Script& script = use->scripts.add (); 00095 00096 script.name = short_name; 00097 script.type = type; 00098 00099 return (&script); 00100 } |
|
? |
Definition at line 134 of file cmt_script.cxx. References Use::current(), Use::get_ordered_uses(), Use::get_package(), Package::is_cmt(), print(), PrintMode, Use::scripts, SetupScript, cmt_vector< Script >::size(), cmt_vector< Use * >::size(), and type. 00135 { 00136 int number; 00137 int script_number; 00138 Use::UsePtrVector& uses = Use::get_ordered_uses (); 00139 00140 if (uses.size () > 0) 00141 { 00142 for (number = 0; number < uses.size (); number++) 00143 { 00144 const Use* use = uses[number]; 00145 00146 Package* p = use->get_package (); 00147 if (p->is_cmt ()) continue; 00148 00149 for (script_number = 0; 00150 script_number < use->scripts.size (); 00151 script_number++) 00152 { 00153 Script& script = use->scripts[script_number]; 00154 00155 if (script.type == SetupScript) 00156 { 00157 if (script.print (mode, use)) cout << "; "; 00158 } 00159 } 00160 } 00161 } 00162 00163 { 00164 const Use& use = Use::current (); 00165 00166 for (script_number = 0; 00167 script_number < use.scripts.size (); 00168 script_number++) 00169 { 00170 Script& script = use.scripts[script_number]; 00171 00172 if (script.type == SetupScript) 00173 { 00174 if (script.print (mode, &use)) cout << "; "; 00175 } 00176 } 00177 } 00178 } |
|
? |
Definition at line 103 of file cmt_script.cxx. References CleanupScript, Use::get_ordered_uses(), Use::get_package(), Package::is_cmt(), print(), PrintMode, Use::scripts, cmt_vector< Script >::size(), cmt_vector< Use * >::size(), and type. Referenced by Cmt::print_clean(). 00104 { 00105 int number; 00106 int script_number; 00107 Use::UsePtrVector& uses = Use::get_ordered_uses (); 00108 00109 if (uses.size () > 0) 00110 { 00111 for (number = 0; number < uses.size (); number++) 00112 { 00113 const Use* use = uses[number]; 00114 00115 Package* p = use->get_package (); 00116 if (p->is_cmt ()) continue; 00117 00118 for (script_number = 0; 00119 script_number < use->scripts.size (); 00120 script_number++) 00121 { 00122 Script& script = use->scripts[script_number]; 00123 00124 if (script.type == CleanupScript) 00125 { 00126 if (script.print (mode, use)) cout << "; "; 00127 } 00128 } 00129 } 00130 } 00131 } |
|
? |
Definition at line 181 of file cmt_script.cxx. Referenced by Cmt::clear(). 00182 { 00183 } |
|
? |
Definition at line 38 of file cmt_script.cxx. References Use::current(), name, Use::scripts, and cmt_vector< Script >::size(). Referenced by add(). 00039 { 00040 int script_index; 00041 00042 if (use == 0) use = &(Use::current()); 00043 00044 if (use->scripts.size () == 0) return (0); 00045 00046 for (script_index = 0; 00047 script_index < use->scripts.size (); 00048 script_index++) 00049 { 00050 Script& script = use->scripts[script_index]; 00051 00052 if (script.name == name) 00053 { 00054 return (&script); 00055 } 00056 } 00057 00058 return (0); 00059 } |
|
? |
Definition at line 196 of file cmt_script.cxx. References cmt_style, Csh, cmt_string::find(), name, cmt_string::npos, Use::prefix, PrintMode, Sh, SLASH, and Use::style. Referenced by all_print(), and all_print_clean(). 00197 { 00198 int result = 1; 00199 cmt_string suffix; 00200 00201 if (name == "") return (0); 00202 00203 switch (mode) 00204 { 00205 case Csh : 00206 suffix = ".csh"; 00207 cout << "source "; 00208 break; 00209 case Sh : 00210 suffix = ".sh"; 00211 cout << ". "; 00212 break; 00213 } 00214 00215 if (name.find (SLASH) == cmt_string::npos) 00216 { 00217 cout << "${" << use->prefix << "ROOT}/"; 00218 if (use->style == cmt_style) cout << "cmt/"; 00219 else cout << "mgr/"; 00220 } 00221 00222 cout << name << suffix; 00223 00224 return (result); 00225 } |
|
? |
Definition at line 32 of file cmt_script.h. |
|
? |
Definition at line 33 of file cmt_script.h. Referenced by action(), add(), all_print(), and all_print_clean(). |