Inheritance diagram for RecursivePass1
Public Methods | |
void | begin () |
void | filter (const cmt_string& line) |
const cmt_string& | result () const |
At the first pass, we simply accumulate the not-yet handled use statements. More... | |
Private Attributes | |
cmt_string | m_result |
bool | m_first |
Definition at line 87 of file cmt_cvs.cxx.
|
Reimplemented from Awk. Definition at line 1634 of file cmt_cvs.cxx. 01635 { 01636 m_first = true; 01637 m_result = ""; 01638 } |
|
Reimplemented from Awk. Definition at line 1640 of file cmt_cvs.cxx. 01641 { 01642 //if (CmtSystem::testenv ("CMTTESTAWK")) cout << "RecursivePass1::filter" << endl; 01643 01644 if (line.find ("use CMT") != cmt_string::npos) return; 01645 if (line.find ("use cmt") != cmt_string::npos) return; 01646 01647 History& h = History::instance (); 01648 01649 if (h.is_installed (line)) return; 01650 01651 CmtSystem::cmt_string_vector words; 01652 01653 CmtSystem::split (line, " \t", words); 01654 01655 enum 01656 { 01657 need_package, 01658 need_version, 01659 need_path, 01660 no_need 01661 } state = need_package; 01662 01663 cmt_string package; 01664 cmt_string version; 01665 cmt_string path; 01666 01667 for (int i = 1; i < words.size (); i++) 01668 { 01669 const cmt_string& s = words[i]; 01670 01671 if (s[0] == '-') continue; 01672 01673 switch (state) 01674 { 01675 case need_package: 01676 package = s; 01677 state = need_version; 01678 break; 01679 case need_version: 01680 version = s; 01681 state = need_path; 01682 break; 01683 case need_path: 01684 path = s; 01685 state = no_need; 01686 break; 01687 } 01688 } 01689 01690 if (version.find ("*") != cmt_string::npos) 01691 { 01692 /* 01693 cout << "# ================= Package " << package 01694 << " version " << version << " " << path 01695 << " has wild cards and will not be considered." << endl; 01696 */ 01697 return; 01698 } 01699 01705 m_result += line; 01706 m_result += "\n"; 01707 01708 if (m_first) 01709 { 01710 m_first = false; 01711 cout << " # --> now propagate cmt checkout to :" << endl; 01712 } 01713 01714 cout << " # " << package << " " << version << " " << path << endl; 01715 } |
|
At the first pass, we simply accumulate the not-yet handled use statements.
Definition at line 1717 of file cmt_cvs.cxx. 01718 { 01719 return (m_result); 01720 } |
|
Definition at line 97 of file cmt_cvs.cxx. |
|
Definition at line 96 of file cmt_cvs.cxx. |