Ignore:
Timestamp:
Aug 2, 2007, 4:17:27 AM (17 years ago)
Author:
dai_9181
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abdev/BasicCompiler64/MakePeHdr.cpp

    r255 r257  
    129129    //////////////////
    130130    // データテーブル
    131     compiler.GetDataTable().Init();
     131    compiler.objectModule.dataTable.Clear();
    132132    if(bDebugCompile){
    133         compiler.GetDataTable().Add( (long)0x00000002 );
     133        compiler.objectModule.dataTable.Add( (long)0x00000002 );
    134134    }
    135135
     
    155155
    156156    //関数ポインタ情報を初期化
    157     compiler.GetMeta().GetProcPointers().clear();
     157    compiler.objectModule.meta.GetProcPointers().clear();
    158158
    159159    // 名前空間情報を取得
    160160    NamespaceSupporter::CollectNamespaces(
    161161        Smoothie::Lexical::source.GetBuffer(),
    162         compiler.GetMeta().GetNamespaces()
     162        compiler.objectModule.meta.GetNamespaces()
    163163    );
    164164
     
    166166    //   CollectProcedures関数の中で参照されるオブジェクト名を事前に取得する。
    167167    //     ※オブジェクトの内容までは取得しない
    168     compiler.GetMeta().GetClasses().CollectClassesForNameOnly( Smoothie::Lexical::source );
     168    compiler.objectModule.meta.GetClasses().CollectClassesForNameOnly( Smoothie::Lexical::source );
    169169
    170170    //TypeDef情報を初期化
    171     compiler.GetMeta().GetTypeDefs().Init();
     171    compiler.objectModule.meta.GetTypeDefs().Init();
    172172
    173173    //定数情報を取得
     
    178178    CollectProcedures(
    179179        Smoothie::Lexical::source,
    180         compiler.GetMeta().GetUserProcs(),
    181         compiler.GetMeta().GetDllProcs()
     180        compiler.objectModule.meta.GetUserProcs(),
     181        compiler.objectModule.meta.GetDllProcs()
    182182    );
    183183
    184184    // クラス情報を取得(※注 - CollectProceduresの後に呼び出す)
    185     compiler.GetMeta().GetClasses().GetAllClassInfo();
     185    compiler.objectModule.meta.GetClasses().GetAllClassInfo();
    186186
    187187    // サブルーチン(ユーザー定義、DLL関数)のイテレータの準備
    188     compiler.GetMeta().GetUserProcs().Iterator_Init();
    189     compiler.GetMeta().GetDllProcs().Iterator_Init();
     188    compiler.objectModule.meta.GetUserProcs().Iterator_Init();
     189    compiler.objectModule.meta.GetDllProcs().Iterator_Init();
    190190
    191191/*
    192     if( !compiler.GetMeta().WriteXml( Jenga::Common::Environment::GetAppDir() + "\\meta_test.xml" ) )
     192    if( !compiler.objectModule.meta.WriteXml( Jenga::Common::Environment::GetAppDir() + "\\meta_test.xml" ) )
    193193    {
    194194        MessageBox(0,"XML書き込みに失敗","test",0);
     
    200200    }
    201201
    202     if( !compiler.GetMeta().WriteBinaly( Jenga::Common::Environment::GetAppDir() + "\\meta_test.dat" ) )
     202    if( !compiler.objectModule.meta.WriteBinaly( Jenga::Common::Environment::GetAppDir() + "\\meta_test.dat" ) )
    203203    {
    204204        MessageBox(0,"バイナリ書き込みに失敗","test",0);
     
    209209        MessageBox(0,"バイナリ読み込みに失敗","test",0);
    210210    }
    211     if( !compiler.GetMeta().WriteText( Jenga::Common::Environment::GetAppDir() + "\\meta_test.dat" ) )
     211    if( !compiler.objectModule.meta.WriteText( Jenga::Common::Environment::GetAppDir() + "\\meta_test.dat" ) )
    212212    {
    213213        MessageBox(0,"バイナリ書き込みに失敗","test",0);
     
    218218        MessageBox(0,"バイナリ読み込みに失敗","test",0);
    219219    }
    220     compiler.GetMeta() = (*pTempMeta);*/
     220    compiler.objectModule.meta = (*pTempMeta);*/
    221221
    222222
     
    384384
    385385        // コード生成対象を選択
    386         compiler.codeGenerator.Select( compiler.globalNativeCode );
     386        compiler.codeGenerator.Select( compiler.objectModule.globalNativeCode );
    387387
    388388        trace_for_sourcecodestep( "★★★ グローバル領域のコンパイルを開始" );
     
    407407
    408408        //クラスに属する静的メンバを定義
    409         compiler.GetMeta().GetClasses().InitStaticMember();
     409        compiler.objectModule.meta.GetClasses().InitStaticMember();
    410410
    411411        //グローバル実行領域をコンパイル開始
     
    524524    // 使用するDLL関数のチェック
    525525    ////////////////////////////////
    526     compiler.GetMeta().GetDllProcs().Iterator_Reset();
    527     while( compiler.GetMeta().GetDllProcs().Iterator_HasNext() )
     526    compiler.objectModule.meta.GetDllProcs().Iterator_Reset();
     527    while( compiler.objectModule.meta.GetDllProcs().Iterator_HasNext() )
    528528    {
    529         const DllProc *pDllProc = compiler.GetMeta().GetDllProcs().Iterator_GetNext();
     529        const DllProc *pDllProc = compiler.objectModule.meta.GetDllProcs().Iterator_GetNext();
    530530
    531531        if( !pDllProc->IsUsing() ){
     
    598598            //辞書順にサーチ
    599599            temporary[0]=0;
    600             compiler.GetMeta().GetUserProcs().Iterator_Reset();
    601             while( compiler.GetMeta().GetUserProcs().Iterator_HasNext() )
     600            compiler.objectModule.meta.GetUserProcs().Iterator_Reset();
     601            while( compiler.objectModule.meta.GetUserProcs().Iterator_HasNext() )
    602602            {
    603                 pUserProc = compiler.GetMeta().GetUserProcs().Iterator_GetNext();
     603                pUserProc = compiler.objectModule.meta.GetUserProcs().Iterator_GetNext();
    604604                if(pUserProc->IsExport()){
    605605                    if(temporary[0]=='\0'){
     
    702702    int ImportDllNum=0;
    703703
    704     compiler.GetMeta().GetDllProcs().Iterator_Reset();
    705     while( compiler.GetMeta().GetDllProcs().Iterator_HasNext() )
     704    compiler.objectModule.meta.GetDllProcs().Iterator_Reset();
     705    while( compiler.objectModule.meta.GetDllProcs().Iterator_HasNext() )
    706706    {
    707         const DllProc *pDllProc = compiler.GetMeta().GetDllProcs().Iterator_GetNext();
     707        const DllProc *pDllProc = compiler.objectModule.meta.GetDllProcs().Iterator_GetNext();
    708708
    709709        if( !pDllProc->IsUsing() ){
     
    741741        pImportDescriptor[i].Name=i*0x10;   //※すぐ下で再計算
    742742
    743         compiler.GetMeta().GetDllProcs().Iterator_Reset();
    744         while( compiler.GetMeta().GetDllProcs().Iterator_HasNext() )
     743        compiler.objectModule.meta.GetDllProcs().Iterator_Reset();
     744        while( compiler.objectModule.meta.GetDllProcs().Iterator_HasNext() )
    745745        {
    746             const DllProc *pDllProc = compiler.GetMeta().GetDllProcs().Iterator_GetNext();
     746            const DllProc *pDllProc = compiler.objectModule.meta.GetDllProcs().Iterator_GetNext();
    747747
    748748            if( !pDllProc->IsUsing() ){
     
    779779    pHintTable=(char *)HeapAlloc(hHeap,0,HintAllocSize);
    780780    for(i=0,i5=0;i<ImportDllNum;i++){
    781         compiler.GetMeta().GetDllProcs().Iterator_Reset();
    782         while( compiler.GetMeta().GetDllProcs().Iterator_HasNext() )
     781        compiler.objectModule.meta.GetDllProcs().Iterator_Reset();
     782        while( compiler.objectModule.meta.GetDllProcs().Iterator_HasNext() )
    783783        {
    784             DllProc *pDllProc = compiler.GetMeta().GetDllProcs().Iterator_GetNext();
     784            DllProc *pDllProc = compiler.objectModule.meta.GetDllProcs().Iterator_GetNext();
    785785
    786786            if( !pDllProc->IsUsing() ){
     
    830830    //(デバッグ情報で利用される)
    831831    extern int AllInitGlobalVarSize;
    832     BOOST_FOREACH( Variable *pVar, compiler.GetMeta().GetGlobalVars() ){
     832    BOOST_FOREACH( Variable *pVar, compiler.objectModule.meta.GetGlobalVars() ){
    833833        if(pVar->GetOffsetAddress()&0x80000000){
    834834            pVar->SetOffsetAddress(
     
    915915
    916916    //データセクションのファイル上のサイズ
    917     if(compiler.GetDataTable().GetSize()%FILE_ALIGNMENT) FileSize_DataSection=compiler.GetDataTable().GetSize()+(FILE_ALIGNMENT-compiler.GetDataTable().GetSize()%FILE_ALIGNMENT);
    918     else FileSize_DataSection=compiler.GetDataTable().GetSize();
     917    if(compiler.objectModule.dataTable.GetSize()%FILE_ALIGNMENT) FileSize_DataSection=compiler.objectModule.dataTable.GetSize()+(FILE_ALIGNMENT-compiler.objectModule.dataTable.GetSize()%FILE_ALIGNMENT);
     918    else FileSize_DataSection=compiler.objectModule.dataTable.GetSize();
    919919    if(FileSize_DataSection) bUse_DataSection=1;
    920920    else bUse_DataSection=0;
     
    10771077            LookupSize;         //ルックアップテーブル
    10781078
    1079         compiler.GetMeta().GetDllProcs().Iterator_Reset();
    1080         while( compiler.GetMeta().GetDllProcs().Iterator_HasNext() )
     1079        compiler.objectModule.meta.GetDllProcs().Iterator_Reset();
     1080        while( compiler.objectModule.meta.GetDllProcs().Iterator_HasNext() )
    10811081        {
    1082             const DllProc *pDllProc = compiler.GetMeta().GetDllProcs().Iterator_GetNext();
     1082            const DllProc *pDllProc = compiler.objectModule.meta.GetDllProcs().Iterator_GetNext();
    10831083
    10841084            if( !pDllProc->IsUsing() ){
     
    10981098    ////////////////////////////////////////
    10991099    //仮想関数データテーブルスケジュール
    1100     compiler.GetMeta().GetClasses().ActionVtblSchedule(ImageBase,MemPos_CodeSection);
     1100    compiler.objectModule.meta.GetClasses().ActionVtblSchedule(ImageBase,MemPos_CodeSection);
    11011101
    11021102
     
    16311631    if(bUse_DataSection){
    16321632        //データ テーブル
    1633         WriteFile(hFile,compiler.GetDataTable().GetPtr(),compiler.GetDataTable().GetSize(),(DWORD *)&i2,NULL);
     1633        WriteFile(hFile,compiler.objectModule.dataTable.GetPtr(),compiler.objectModule.dataTable.GetSize(),(DWORD *)&i2,NULL);
    16341634        i+=i2;
    16351635    }
     
    17431743
    17441744    //クラスに関するメモリを解放
    1745     compiler.GetMeta().GetClasses().Clear();
     1745    compiler.objectModule.meta.GetClasses().Clear();
    17461746}
Note: See TracChangeset for help on using the changeset viewer.