Changeset 167 in dev for trunk/abdev/BasicCompiler_Common


Ignore:
Timestamp:
Jun 17, 2007, 9:56:19 PM (17 years ago)
Author:
dai_9181
Message:

BasicSysDirをGetAppDirに置き換えた

Location:
trunk/abdev/BasicCompiler_Common
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/abdev/BasicCompiler_Common/BasicCompiler.cpp

    r165 r167  
    1 #include <jenga/include/common/logger.h>
    2 #include <jenga/include/common/Environment.h>
     1#include <Program.h>
    32
    43#include "BasicCompiler.h"
     
    163162    lstrcpy(path,temp3);
    164163}
    165 void GetFullPath(char *path,char *dir){
     164void GetFullPath( char *path, const string &baseDirPath ){
    166165    int i,i2,i3,i4;
    167166    char temporary[MAX_PATH];
     
    186185    }
    187186
    188     i3=lstrlen(dir);i4=0;
     187    i3=baseDirPath.size();i4=0;
    189188    while(i4<i2){
    190189        for(i3--;;i3--){
    191             if(dir[i3-1]=='\\'){
     190            if(baseDirPath[i3-1]=='\\'){
    192191                i4++;
    193192                break;
     
    195194        }
    196195    }
    197     memcpy(temporary,dir,i3);
     196    memcpy(temporary,baseDirPath.c_str(),i3);
    198197    temporary[i3]=0;
    199198    lstrcat(temporary,path+i);
     
    563562    hInst=hThisInst;
    564563
    565     GetModuleFileName(hInst,temporary,MAX_PATH);
    566     _splitpath(temporary,BasicSystemDir,temp2,NULL,NULL);
    567     lstrcat(BasicSystemDir,temp2);
    568 
    569564    //不揮発性データを取得
    570565    pobj_nv=new CNonVolatile;
     
    742737
    743738    //インクルードディレクトリを絶対パスに変更
    744     GetFullPath(szIncludeDir,BasicSystemDir);
     739    GetFullPath(szIncludeDir,(Jenga::Common::Environment::GetAppDir()+"\\").c_str());
    745740
    746741    if(bDll){
  • trunk/abdev/BasicCompiler_Common/BasicCompiler.h

    r100 r167  
    8585char *basbuf;
    8686
    87 char BasicSystemDir[MAX_PATH];  //BasicCompiler.exeが存在するディレクトリ
    8887char BasicCurDir[MAX_PATH];     //コンパイルするファイルが存在するディレクトリ
    8988char SourceFileName[MAX_PATH];
  • trunk/abdev/BasicCompiler_Common/Diagnose.cpp

    r159 r167  
     1#include <Program.h>
     2
    13#include "../BasicCompiler_Common/common.h"
    24
     
    1921        extern int GlobalOpBufferSize;
    2022        sprintf(temporary, "%d", GlobalOpBufferSize/1024 );
    21         Smoothie::Logger::Put( (string)"グローバル領域のコードサイズ: " + temporary + "KB" );
     23        trace_for_size( (string)"グローバル領域のコードサイズ: " + temporary + "KB" );
    2224        sprintf(temporary, "%d", (obp-GlobalOpBufferSize)/1024 );
    23         Smoothie::Logger::Put( (string)"ローカル領域のコードサイズ: " + temporary + "KB" );
     25        trace_for_size( (string)"ローカル領域のコードサイズ: " + temporary + "KB" );
    2426        sprintf(temporary, "%d", obp/1024 );
    25         Smoothie::Logger::Put( (string)"コードサイズ総量: " + temporary + "KB" );
     27        trace_for_size( (string)"コードサイズ総量: " + temporary + "KB" );
    2628    }
    2729
     
    5153
    5254        sprintf(temporary, "%d", codeSizeOfGlobalProc/1024 );
    53         Smoothie::Logger::Put( (string)"グローバル関数のコードサイズ総量: " + temporary + "KB" );
     55        trace_for_size( (string)"グローバル関数のコードサイズ総量: " + temporary + "KB" );
    5456        sprintf(temporary, "%d", codeSizeOfClassMethod/1024 );
    55         Smoothie::Logger::Put( (string)"クラスメソッドのコードサイズ総量: " + temporary + "KB" );
     57        trace_for_size( (string)"クラスメソッドのコードサイズ総量: " + temporary + "KB" );
    5658    }
    5759
     
    9294
    9395        sprintf(temporary, "%d", codeSizeOfEnum/1024 );
    94         Smoothie::Logger::Put( (string)"Enumのコードサイズ総量: " + temporary + "KB" );
     96        trace_for_size( (string)"Enumのコードサイズ総量: " + temporary + "KB" );
    9597    }
    9698
    97     Smoothie::Logger::Put( "\n\n" );
     99    trace_for_size( "\n\n" );
    98100
    99101    {
     
    130132                lstrcat( temporary, "------------------------------------------------------------------\n" );
    131133                lstrcat( temporary, "\n" );
    132                 Smoothie::Logger::Put( temporary );
     134                trace_for_size( temporary );
    133135            }
    134136        }
  • trunk/abdev/BasicCompiler_Common/Enum.cpp

    r103 r167  
     1#include <jenga/include/common/logger.h>
     2
    13#include "common.h"
    24
     
    286288
    287289    // ログを生成
    288     Smoothie::Logger::PutFile( "enum_generated.log", buffer );
     290    Jenga::Common::Logger logger( Jenga::Common::Environment::GetAppDir() + "\\enum_generated.log" );
     291    logger << buffer << endl;
    289292
    290293    return buffer;
  • trunk/abdev/BasicCompiler_Common/MakeExe.cpp

    r100 r167  
    5959    int i2,i3;
    6060    char temp2[MAX_PATH];
    61 
    62     //ログ用バッファを初期化
    63     Smoothie::Logger::Initialize();
    6461
    6562    //プログレスバーの設定
  • trunk/abdev/BasicCompiler_Common/ParamImpl.cpp

    r165 r167  
    1 #include <jenga/include/common/logger.h>
     1#include <Program.h>
    22
    33#include "common.h"
     
    207207
    208208            if(EvaluateOverloadScore( level, pTempUserProc->Params(), isEnabledReturnType?pTempUserProc->ReturnType():Type() )){
    209                 trace( "レベル" << level <<    " ○適合..." << pTempUserProc->_paramStr );
     209                trace_for_overload( "レベル" << level <<   " ○適合..." << pTempUserProc->_paramStr );
    210210
    211211                if(sw){
     
    218218                        // 戻り値も比較するモードにして再びオーバーロード解決を試みる
    219219
    220                         trace( "戻り値も比較するモードに切り替えてオーバーロード解決を試みる" );
     220                        trace_for_overload( "戻り値も比較するモードに切り替えてオーバーロード解決を試みる" );
    221221
    222222                        return OverloadSolution(name,subs, true);
     
    229229            else
    230230            {
    231                 trace( "レベル" << level <<    " ×不適合..." << pTempUserProc->_paramStr );
     231                trace_for_overload( "レベル" << level <<   " ×不適合..." << pTempUserProc->_paramStr );
    232232            }
    233233        }
     
    262262}
    263263UserProc *ParamImpl::OverloadSolution( const char *name, std::vector<UserProc *> &subs, bool isEnabledReturnType ){
    264     trace( "" );
    265     trace( "■■■■■■■■■■■■■■■■■■" );
    266     trace( "■■■ オーバーロード解決(" << name << ")" );
     264    trace_for_overload( "" );
     265    trace_for_overload( "■■■■■■■■■■■■■■■■■■" );
     266    trace_for_overload( "■■■ オーバーロード解決(" << name << ")" );
    267267
    268268    UserProc *result = _OverloadSolution( name, subs, isEnabledReturnType );
    269269
    270     trace( "■■■ ここまで" );
    271     trace( "■■■■■■■■■■■■■■■■■■" );
    272     trace( "" );
     270    trace_for_overload( "■■■ ここまで" );
     271    trace_for_overload( "■■■■■■■■■■■■■■■■■■" );
     272    trace_for_overload( "" );
    273273
    274274    return result;
  • trunk/abdev/BasicCompiler_Common/common.h

    r165 r167  
    9090extern HWND hOwnerEditor;
    9191extern HANDLE hHeap;
    92 extern char BasicSystemDir[MAX_PATH];
    9392extern int cp;
    9493extern bool isUnicode;
     
    288287void epi_check();
    289288void GetRelationalPath(char *path,char *dir);
    290 void GetFullPath(char *path,char *dir);
     289void GetFullPath( char *path, const string &baseDirPath );
    291290void ShowErrorLine(int LineNum,char *FileName);
    292291BOOL GetFilePathDialog(HWND hwnd,char *filename,LPSTR Filter,LPSTR Title,BOOL bOpen);
  • trunk/abdev/BasicCompiler_Common/error.cpp

    r165 r167  
    1 #include <jenga/include/common/logger.h>
     1#include <Program.h>
    22
    33#include "../BasicCompiler_Common/common.h"
  • trunk/abdev/BasicCompiler_Common/include/Smoothie.h

    r159 r167  
    77public:
    88
    9     class Logger{
    10         static string log;
    11     public:
    12         static void Initialize(){
    13 #ifdef _DEBUG
    14             log = "";
    15 
    16             ofstream ofs( ( (string)BasicSystemDir + "Log\\compile.log" ).c_str(), ios_base::trunc );
    17             ofs.close();
    18 #endif
    19         }
    20         static void Put( const string &text );
    21         static void PutFile( const string &fileName, const string &buffer ){
    22             ofstream ofs( ( (string)BasicSystemDir + "Log\\" + fileName ).c_str() );
    23             ofs << buffer << endl;
    24             ofs.close();
    25         }
    26     };
    27 
    289    class Lexical{
    2910    public:
     11        static string baseProjectDirPath;
    3012        static BasicSource source;
    3113        static NamespaceScopes liveingNamespaceScopes;
  • trunk/abdev/BasicCompiler_Common/include/option.h

    r165 r167  
    1919#endif
    2020
     21
     22// ログ関係
     23
    2124// ログ生成しない場合はこの下の行をコメントアウトする
    2225#define USE_TRACE
     26
     27// オーバーロードに関するログを生成する
     28#define USE_TRACE_FOR_OVERLOAD
     29
     30// モジュールサイズに関するログを生成する
     31#define USE_TRACE_FOR_SIZE
    2332
    2433
     
    2837
    2938#ifdef USE_TRACE
    30 #define trace(s) Jenga::Common::logger << s << endl
     39#define trace(s) Program::logger << s << endl
    3140#else
    3241#define trace(s)
    3342#endif
     43
     44#ifdef USE_TRACE_FOR_OVERLOAD
     45#define trace_for_overload(s) trace(s)
     46#else
     47#define trace_for_overload(s)
     48#endif
     49
     50#ifdef USE_TRACE_FOR_SIZE
     51#define trace_for_size(s) trace(s)
     52#else
     53#define trace_for_size(s)
     54#endif
  • trunk/abdev/BasicCompiler_Common/src/Smoothie.cpp

    r159 r167  
    11#include <..\common.h>
    2 
    3 string Smoothie::Logger::log = "";
    4 
    5 void Smoothie::Logger::Put( const string &text )
    6 {
    7 //#ifdef _DEBUG
    8     log += text + "\r\n";
    9 
    10     {
    11         ofstream ofs( ( (string)BasicSystemDir + "Log\\compile.log" ).c_str(), ios_base::app );
    12         ofs << text << endl;
    13         ofs.close();
    14     }
    15 //#endif
    16 }
    172
    183BasicSource Smoothie::Lexical::source;
Note: See TracChangeset for help on using the changeset viewer.