Changeset 612 for CMT/HEAD/source/cmt_parser.cxx
- Timestamp:
- Apr 26, 2012, 9:51:00 AM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
CMT/HEAD/source/cmt_parser.cxx
r610 r612 4353 4353 void Cmt::do_show_action (const ArgParser& ap) 4354 4354 { 4355 cmt_string target; 4356 4357 if (ap.arguments.size () > 0) target = ap.arguments[0]; 4358 4359 Symbol* symbol; 4360 4361 set_standard_macros (); 4362 4363 symbol = Symbol::find (target); 4364 4365 if (symbol == 0) 4366 { 4367 cmt_string t (target); 4368 t += " is not defined"; 4369 4370 CmtError::set (CmtError::symbol_not_found, t); 4371 4372 return; 4373 } 4374 else 4375 { 4376 cmt_string t = target; 4377 t += " is a "; 4378 4379 if ((Me.m_action == action_show_action) || 4380 (Me.m_action == action_show_action_value)) 4381 { 4382 if (symbol->type != Symbol::SymbolAction) 4383 { 4384 if (symbol->type == Symbol::SymbolMacro) 4385 { 4386 t += "macro"; 4387 } 4388 else if (symbol->type == Symbol::SymbolSet) 4389 { 4390 t += "set"; 4391 } 4392 else if (symbol->type == Symbol::SymbolPath) 4393 { 4394 t += "path"; 4395 } 4396 else if (symbol->type == Symbol::SymbolAlias) 4397 { 4398 t += "alias"; 4399 } 4400 4401 CmtError::set (CmtError::wrong_symbol_type, t); 4402 } 4403 } 4404 } 4405 4406 if (symbol->value_lists.size () < 1) return; 4407 4408 symbol->show_macro (ap.mode); 4355 do_show_macro (ap); 4409 4356 } 4410 4357 … … 4431 4378 //---------------------------------------------------------- 4432 4379 void Cmt::do_show_actions (const ArgParser& ap) 4380 { 4381 if (ap.arguments.size () > 0) 4382 { 4383 const cmt_string& pattern = ap.arguments[0]; 4384 print_macros (ap.mode, pattern); 4385 } 4386 else 4387 { 4388 print_macros (ap.mode); 4389 } 4390 } 4391 4392 //---------------------------------------------------------- 4393 void Cmt::do_show_alias (const ArgParser& ap) 4394 { 4395 do_show_macro (ap); 4396 } 4397 4398 //---------------------------------------------------------- 4399 void Cmt::do_show_alias_names (const ArgParser& ap) 4400 { 4401 if (ap.arguments.size () > 0) 4402 { 4403 const cmt_string& pattern = ap.arguments[0]; 4404 print_symbol_names (ap.mode, pattern); 4405 } 4406 else 4407 { 4408 print_symbol_names (ap.mode); 4409 } 4410 } 4411 4412 //---------------------------------------------------------- 4413 void Cmt::do_show_alias_value (const ArgParser& ap) 4414 { 4415 do_show_macro (ap); 4416 } 4417 4418 //---------------------------------------------------------- 4419 void Cmt::do_show_aliases (const ArgParser& ap) 4433 4420 { 4434 4421 if (ap.arguments.size () > 0) … … 4717 4704 { 4718 4705 cmt_string t = target; 4719 t += " is a";4706 t += " is "; 4720 4707 4721 4708 if ((Me.m_action == action_show_macro) || … … 4759 4746 } 4760 4747 } 4748 else if ( 4749 ((Me.m_action == action_show_action || 4750 Me.m_action == action_show_action_value) && 4751 symbol->type != Symbol::SymbolAction) 4752 || 4753 ((Me.m_action == action_show_alias || 4754 Me.m_action == action_show_alias_value) && 4755 symbol->type != Symbol::SymbolAlias) 4756 ) 4757 { 4758 switch (symbol->type) 4759 { 4760 case Symbol::SymbolUndefined: 4761 t += "undefined"; 4762 break; 4763 case Symbol::SymbolAction: 4764 t += "action"; 4765 break; 4766 case Symbol::SymbolAlias: 4767 t += "alias"; 4768 break; 4769 case Symbol::SymbolMacro: 4770 t += "macro"; 4771 break; 4772 case Symbol::SymbolSetupScript: 4773 t += "setup_script"; 4774 break; 4775 case Symbol::SymbolCleanupScript: 4776 t += "cleanup_script"; 4777 break; 4778 case Symbol::SymbolSet: 4779 t += "set"; 4780 break; 4781 case Symbol::SymbolPath: 4782 t += "path"; 4783 break; 4784 default: 4785 t += "unknown"; 4786 break; 4787 } 4788 4789 CmtError::set (CmtError::wrong_symbol_type, t); 4790 } 4761 4791 } 4762 4792 … … 6605 6635 case action_show_action_value : 6606 6636 case action_show_actions : 6637 case action_show_alias : 6638 case action_show_alias_names : 6639 case action_show_alias_value : 6640 case action_show_aliases : 6607 6641 case action_show_all_tags : 6608 6642 case action_show_applied_patterns : … … 6724 6758 case action_show_action_value : 6725 6759 case action_show_actions : 6760 case action_show_alias : 6761 case action_show_alias_names : 6762 case action_show_alias_value : 6763 case action_show_aliases : 6726 6764 case action_show_all_tags : 6727 6765 case action_show_applied_patterns : … … 6832 6870 case action_show_action_value : 6833 6871 case action_show_actions : 6872 case action_show_alias : 6873 case action_show_alias_names : 6874 case action_show_alias_value : 6875 case action_show_aliases : 6834 6876 case action_show_all_tags : 6835 6877 case action_show_applied_patterns : … … 6980 7022 // case action_show_action_value : 6981 7023 // case action_show_actions : 7024 // case action_show_alias : 7025 // case action_show_alias_names : 7026 // case action_show_alias_value : 7027 // case action_show_aliases : 6982 7028 // case action_show_all_tags : 6983 7029 // case action_show_applied_patterns : … … 7193 7239 do_show_actions (ap); 7194 7240 break; 7241 case action_show_alias : 7242 do_show_alias (ap); 7243 break; 7244 case action_show_alias_names : 7245 do_show_alias_names (ap); 7246 break; 7247 case action_show_alias_value : 7248 do_show_alias_value (ap); 7249 break; 7250 case action_show_aliases : 7251 do_show_aliases (ap); 7252 break; 7195 7253 case action_show_all_tags : 7196 7254 do_show_all_tags (ap); … … 7760 7818 else if (Me.m_action == action_show_set_names) 7761 7819 { 7762 // Exclude macros .7820 // Exclude macros, actions. 7763 7821 if ((symbol.type == Symbol::SymbolMacro) || 7764 7822 (symbol.type == Symbol::SymbolAction)) continue; … … 7766 7824 else if (Me.m_action == action_show_action_names) 7767 7825 { 7768 // Exclude macros.7826 // Only keep actions. 7769 7827 if (symbol.type != Symbol::SymbolAction) continue; 7828 } 7829 else if (Me.m_action == action_show_alias_names) 7830 { 7831 // Only keep aliases. 7832 if (symbol.type != Symbol::SymbolAlias) continue; 7770 7833 } 7771 7834 … … 7827 7890 { 7828 7891 if (symbol.type != Symbol::SymbolAction) continue; 7892 } 7893 else if (Me.m_action == action_show_aliases) 7894 { 7895 if (symbol.type != Symbol::SymbolAlias) continue; 7829 7896 } 7830 7897
Note: See TracChangeset
for help on using the changeset viewer.