Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

UseAnalyzer Class Reference

List of all members.

Public Member Functions

void run (const cmt_string &constituent)
void run (const cmt_string &location, const cmt_string &package, const cmt_string &filter_out="")

Member Function Documentation

void UseAnalyzer::run const cmt_string location,
const cmt_string package,
const cmt_string filter_out = ""
 

Definition at line 761 of file cmt_triggers.cxx.

References CmtSystem::basename(), CmtSystem::cmt_string_vector, FAwk::run(), CmtSystem::scan_dir(), and cmt_vector< T >::size().

00764 {
00765   static cmt_regexp expression ("[.]triggers$");
00766 
00767   TriggerAnalyzer analyzer (package);
00768 
00769   CmtSystem::cmt_string_vector files;
00770 
00771   CmtSystem::scan_dir (location, expression, files);
00772 
00773   cmt_string name;
00774 
00775   for (int i = 0; i < files.size (); i++)
00776     {
00777       const cmt_string& file = files[i];
00778 
00779       if (filter_out != "")
00780         {
00781           CmtSystem::basename (file, ".triggers", name);
00782           if (name == filter_out) continue;
00783         }
00784 
00785       analyzer.run (file);
00786     }
00787 }

void UseAnalyzer::run const cmt_string constituent  ) 
 

Definition at line 732 of file cmt_triggers.cxx.

References Use::current(), CmtSystem::file_separator(), Use::get_ordered_uses(), Use::get_package_name(), mgr_style, Use::real_path, cmt_vector< T >::size(), Use::style, Use::UsePtrVector, and Use::version.

00733 {
00734   Use* use = &(Use::current ());
00735 
00736   run ("./", use->get_package_name (), constituent);
00737 
00738   Use::UsePtrVector& uses = Use::get_ordered_uses ();
00739   for (int i = 0; i < uses.size (); i++)
00740     {
00741       use = uses[i];
00742 
00743       cmt_string s;
00744                                   
00745       s = use->real_path;
00746       s += CmtSystem::file_separator ();
00747       s += use->get_package_name ();
00748       s += CmtSystem::file_separator ();
00749       s += use->version;
00750       s += CmtSystem::file_separator ();
00751                                   
00752       if (use->style == mgr_style) s += "mgr";
00753       else s += "cmt";
00754 
00755       s += CmtSystem::file_separator ();
00756 
00757       run (s, use->get_package_name ());
00758     }
00759 }


The documentation for this class was generated from the following file:
Generated on Mon May 2 10:26:05 2005 for CMT by doxygen 1.3.5