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

cmt_language.h

Go to the documentation of this file.
00001 #ifndef __cmt_language_h__
00002 #define __cmt_language_h__
00003 
00004 #include "cmt_parser.h"
00005 #include "cmt_fragment.h"
00006 
00007 class Language
00008 {
00009 public:
00010   typedef cmt_vector<Language> LanguageVector;
00011   static void action (const CmtSystem::cmt_string_vector& words);
00012   static Language& find (const cmt_string& name);
00013   static Language& find_with_suffix (const cmt_string& suffix);
00014   static Language& add (const cmt_string& name);
00015   static void show (const cmt_string& name);
00016   static void show_all ();
00017   static void show_names ();
00018   static void setup_all_fragments ();
00019   static void clear_all ();
00020   static LanguageVector& languages ();
00021   static Language& null ();
00022 
00023 public:
00024   Language ();
00025   ~Language ();
00026   void clear ();
00027   void show ();
00028   void setup_fragments ();
00029   bool operator == (const cmt_string& name) const;
00030   bool operator == (const Language& other) const;
00031   bool operator != (const Language& other) const;
00032 
00033   cmt_string m_name;
00034   cmt_string fragment_name;
00035   cmt_string linker;
00036   cmt_string output_suffix;
00037   bool prototypes;
00038   cmt_string preprocessor_command;
00039   CmtSystem::cmt_string_vector suffixes;
00040   CmtSystem::cmt_string_vector extra_output_suffixes;
00041 
00042   FragmentHandle application;
00043   FragmentHandle library;
00044 };
00045 
00046 #endif

Generated at Thu May 16 16:27:06 2002 for CMT by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000