Main Page ? Class Hierarchy ? Compound List ? File List ? Compound Members ? File Members ?

DependencyFilter Class Reference

Inheritance diagram for DependencyFilter:

[legend]
Collaboration diagram for DependencyFilter:

[legend]
List of all members.

Public Methods

? DependencyFilter ()
void? begin ()
void? filter (const cmt_string &line)
void? add_source (const cmt_string &file_name)
bool? has_source (const cmt_string &file_name) const
cmt_string &? get_sources ()

Private Attributes

cmt_string? m_sources

Constructor & Destructor Documentation

DependencyFilter::DependencyFilter (? ? )? [inline]
?

Definition at line 2493 of file cmt_generators.cxx.

02494       {
02495       }

Member Function Documentation

void DependencyFilter::add_source (? const cmt_string &? ? file_name )? [inline]
?

Definition at line 2518 of file cmt_generators.cxx.

References CmtSystem::basename(), cmt_string::find(), CmtSystem::get_dot_suffix(), CmtSystem::get_suffix(), m_sources, and cmt_string::npos.

Referenced by DependencyGenerator::build().

02519       {
02520         static cmt_string suffix;
02521         static cmt_string name;
02522 
02523         CmtSystem::get_dot_suffix (file_name, suffix);
02524         CmtSystem::basename (file_name, suffix, name);
02525         CmtSystem::get_suffix (file_name, suffix);
02526 
02527         cmt_string s = " ";
02528         s += name;
02529         s += "_";
02530         s += suffix;
02531         s += " ";
02532 
02533         if (m_sources.find (s) == cmt_string::npos)
02534           {
02535             m_sources += s;
02536           }        
02537       }

void DependencyFilter::begin (? ? )? [inline, virtual]
?

Reimplemented from Awk.

Definition at line 2497 of file cmt_generators.cxx.

References m_sources.

02498       {
02499         m_sources = "";
02500       }

void DependencyFilter::filter (? const cmt_string &? ? line )? [inline, virtual]
?

Reimplemented from Awk.

Definition at line 2502 of file cmt_generators.cxx.

References cmt_string::erase(), cmt_string::find(), m_sources, and cmt_string::npos.

02503       {
02504         int pos = line.find ("_dependencies = ");
02505         if (pos == cmt_string::npos) return;
02506 
02507         cmt_string s = line;
02508         s.erase (pos);
02509 
02510         m_sources += " ";
02511         m_sources += s;
02512         m_sources += " ";
02513 
02514           //pos = s.find_last_of ("_");
02515           //if (pos != cmt_string::npos) s[pos] = "."
02516       }

cmt_string& DependencyFilter::get_sources (? ? )? [inline]
?

Definition at line 2564 of file cmt_generators.cxx.

02565       {
02566         return (m_sources);
02567       }

bool DependencyFilter::has_source (? const cmt_string &? ? file_name )? const [inline]
?

Definition at line 2539 of file cmt_generators.cxx.

References CmtSystem::basename(), cmt_string::find(), CmtSystem::get_dot_suffix(), CmtSystem::get_suffix(), m_sources, and cmt_string::npos.

Referenced by DependencyGenerator::build().

02540       {
02541         static cmt_string suffix;
02542         static cmt_string name;
02543 
02544         CmtSystem::get_dot_suffix (file_name, suffix);
02545         CmtSystem::basename (file_name, suffix, name);
02546         CmtSystem::get_suffix (file_name, suffix);
02547 
02548         cmt_string s = " ";
02549         s += name;
02550         s += "_";
02551         s += suffix;
02552         s += " ";
02553 
02554         if (m_sources.find (s) == cmt_string::npos)
02555           {
02556             return (false);
02557           }
02558         else
02559           {
02560             return (true);
02561           }
02562       }

Member Data Documentation

cmt_string DependencyFilter::m_sources [private]
?

Definition at line 2570 of file cmt_generators.cxx.

Referenced by add_source(), begin(), filter(), and has_source().


The documentation for this class was generated from the following file:
Generated on Thu Jul 1 15:26:50 2004 for CMT by 1.2.18