TMacroFileParser.hh Source File

メインページ モジュール クラス階層 アルファベット順一覧 構成 ファイル一覧 構成メンバ ファイルメンバ 関連ページ 例

# TMacroFileParser.hh

解説を見る。

    00001 // =====================================================================
    00021 // =====================================================================
    00022 #ifndef __TMACROFILEPARSER_HH
    00023 #define __TMACROFILEPARSER_HH
    00024
    00025 #include "Tglobals.h"
    00026
    00027
    00047 class TMacroFileParser
    00048 {
    00049
    00050   private:
    00051     Tstring theMacroFileName;
    00052     TstringList theCommentStringList;
    00053     Tifstream theMacroFileStream;
    00054
    00055   public:
    00056     TMacroFileParser();
    00057     TMacroFileParser( const Tstring& input );
    00058     TMacroFileParser( const Tstring& input, const TstringList& comment );
    00059     TMacroFileParser( const TMacroFileParser& right );
    00060     ~TMacroFileParser();
    00061
    00062   public:
    00063     Tvoid Open();
    00064     Tvoid Open( const Tstring& filename );
    00065     Tbool IsOpen();
    00066     Tbool IsGood() const;
    00067     Tbool IsFail() const;
    00068     Tbool IsEndOfFile() const;
    00069     Tbool IsSuccess();
    00070     Tvoid Close();
    00071     TstringList ReadLine();
    00072     Tbool IsExecutable( const TstringList& readbuf ) const;
    00073     Tstring GetCommand( const TstringList& readbuf ) const;
    00074     TstringList GetArguments( const TstringList& readbuf ) const;
    00075
    00076   public:
    00077     const Tstring& GetMacroFileName() const;
    00078     Tvoid SetMacroFileName( const Tstring& filename );
    00079     const TstringList& GetCommentStringList() const;
    00080     TstringList GetCommentStringList();
    00081     Tvoid SetCommentStringList( const TstringList& list );
    00082     Tifstream& GetMacroFileStream();
    00083
    00084   private:
    00085     Tvoid checkFileStream();
    00086     TstringList divideLine( Tstring& readline ) const;
    00087     const Tstring& eraseComment( Tstring& readline ) const;
    00088
    00089 };
    00090
    00091 inline const Tstring& TMacroFileParser::GetMacroFileName() const
    00092 {
    00093   return theMacroFileName;
    00094 }
    00095
    00096 inline Tvoid TMacroFileParser::SetMacroFileName( const Tstring& filename )
    00097 {
    00098   theMacroFileName = filename;
    00099   return;
    00100 }
    00101
    00102 inline const TstringList& TMacroFileParser::GetCommentStringList() const
    00103 {
    00104   return theCommentStringList;
    00105 }
    00106
    00107 inline TstringList TMacroFileParser::GetCommentStringList()
    00108 {
    00109   return theCommentStringList;
    00110 }
    00111
    00112 inline Tvoid TMacroFileParser::SetCommentStringList( const TstringList& list )
    00113 {
    00114   theCommentStringList = list;
    00115   return;
    00116 }
    00117
    00118 inline Tifstream& TMacroFileParser::GetMacroFileStream()
    00119 {
    00120   return theMacroFileStream;
    00121 }
    00122
    00123
    00124 #endif