Ignore:
Timestamp:
Aug 1, 2007, 11:19:01 PM (17 years ago)
Author:
dai_9181
Message:

MetaImplを廃止し、Metaにした。
ObjectModuleクラス、Linkerクラスを用意。

File:
1 edited

Legend:

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

    r232 r256  
    3737        (*p)+=lstrlen(buffer+(*p))+1;
    3838
    39         type.SetClassPtr( compiler.GetMeta().GetClasses().Find(szClassName) );
     39        type.SetClassPtr( compiler.objectModule.meta.GetClasses().Find(szClassName) );
    4040    }
    4141    else{
     
    121121
    122122    //イテレータをリセット
    123     compiler.GetMeta().GetClasses().Iterator_Reset();
     123    compiler.objectModule.meta.GetClasses().Iterator_Reset();
    124124
    125125    //個数
    126     *(long *)(buffer+i2)=compiler.GetMeta().GetClasses().Iterator_GetMaxCount();
    127     i2+=sizeof(long);
    128 
    129     while(compiler.GetMeta().GetClasses().Iterator_HasNext()){
     126    *(long *)(buffer+i2)=compiler.objectModule.meta.GetClasses().Iterator_GetMaxCount();
     127    i2+=sizeof(long);
     128
     129    while(compiler.objectModule.meta.GetClasses().Iterator_HasNext()){
    130130        CClass *pobj_c;
    131         pobj_c=compiler.GetMeta().GetClasses().Iterator_GetNext();
     131        pobj_c=compiler.objectModule.meta.GetClasses().Iterator_GetNext();
    132132
    133133        //クラス名
     
    141141    // TypeDef情報
    142142    //////////////////
    143     *(long *)(buffer+i2)=(int)compiler.GetMeta().GetTypeDefs().size();
    144     i2+=sizeof(long);
    145     for(i3=0;i3<(int)compiler.GetMeta().GetTypeDefs().size();i3++){
    146         lstrcpy(buffer+i2,compiler.GetMeta().GetTypeDefs()[i3].GetName().c_str() );
    147         i2+=lstrlen(buffer+i2)+1;
    148 
    149         lstrcpy(buffer+i2,compiler.GetMeta().GetTypeDefs()[i3].GetBaseName().c_str() );
     143    *(long *)(buffer+i2)=(int)compiler.objectModule.meta.GetTypeDefs().size();
     144    i2+=sizeof(long);
     145    for(i3=0;i3<(int)compiler.objectModule.meta.GetTypeDefs().size();i3++){
     146        lstrcpy(buffer+i2,compiler.objectModule.meta.GetTypeDefs()[i3].GetName().c_str() );
     147        i2+=lstrlen(buffer+i2)+1;
     148
     149        lstrcpy(buffer+i2,compiler.objectModule.meta.GetTypeDefs()[i3].GetBaseName().c_str() );
    150150        i2+=lstrlen(buffer+i2)+1;
    151151
     
    159159
    160160    //グローバル変数情報
    161     *(long *)(buffer+i2)=(int)compiler.GetMeta().GetGlobalVars().size();
    162     i2+=sizeof(long);
    163     BOOST_FOREACH( Variable *pVar, compiler.GetMeta().GetGlobalVars() ){
     161    *(long *)(buffer+i2)=(int)compiler.objectModule.meta.GetGlobalVars().size();
     162    i2+=sizeof(long);
     163    BOOST_FOREACH( Variable *pVar, compiler.objectModule.meta.GetGlobalVars() ){
    164164        //変数名
    165165        lstrcpy(buffer+i2,pVar->GetName().c_str());
     
    212212
    213213    //プロシージャ情報
    214     *(long *)(buffer+i2) = compiler.GetMeta().GetUserProcs().Iterator_GetMaxCount();
    215     i2+=sizeof(long);
    216     compiler.GetMeta().GetUserProcs().Iterator_Reset();
    217     while( compiler.GetMeta().GetUserProcs().Iterator_HasNext() )
     214    *(long *)(buffer+i2) = compiler.objectModule.meta.GetUserProcs().Iterator_GetMaxCount();
     215    i2+=sizeof(long);
     216    compiler.objectModule.meta.GetUserProcs().Iterator_Reset();
     217    while( compiler.objectModule.meta.GetUserProcs().Iterator_HasNext() )
    218218    {
    219         UserProc *pUserProc = compiler.GetMeta().GetUserProcs().Iterator_GetNext();
     219        UserProc *pUserProc = compiler.objectModule.meta.GetUserProcs().Iterator_GetNext();
    220220
    221221        if(pUserProc->GetParentClassPtr()){
     
    309309
    310310    //イテレータをリセット
    311     compiler.GetMeta().GetClasses().Iterator_Reset();
    312 
    313     while(compiler.GetMeta().GetClasses().Iterator_HasNext()){
     311    compiler.objectModule.meta.GetClasses().Iterator_Reset();
     312
     313    while(compiler.objectModule.meta.GetClasses().Iterator_HasNext()){
    314314        CClass *pobj_c;
    315         pobj_c=compiler.GetMeta().GetClasses().Iterator_GetNext();
     315        pobj_c=compiler.objectModule.meta.GetClasses().Iterator_GetNext();
    316316
    317317
     
    510510    }
    511511
    512     compiler.GetMeta().SetClasses( this->pobj_DBClass );
     512    compiler.objectModule.meta.SetClasses( this->pobj_DBClass );
    513513
    514514
     
    518518
    519519    //初期化
    520     compiler.GetMeta().GetTypeDefs().clear();
     520    compiler.objectModule.meta.GetTypeDefs().clear();
    521521
    522522    //個数を取得
     
    528528
    529529        // 名前空間に未対応
    530         compiler.GetMeta().GetTypeDefs().push_back( TypeDef( NamespaceScopes(), temp5, buffer+i2, -1 ) );
     530        compiler.objectModule.meta.GetTypeDefs().push_back( TypeDef( NamespaceScopes(), temp5, buffer+i2, -1 ) );
    531531
    532532        i2+=lstrlen(buffer+i2)+1;
     
    535535    //定数を取得
    536536    GetConstInfo();
    537     this->globalConsts = compiler.GetMeta().GetGlobalConsts();
    538     this->globalConstMacros = compiler.GetMeta().GetGlobalConstMacros();
     537    this->globalConsts = compiler.objectModule.meta.GetGlobalConsts();
     538    this->globalConstMacros = compiler.objectModule.meta.GetGlobalConstMacros();
    539539
    540540    //グローバル変数情報
    541     compiler.GetMeta().GetGlobalVars().clear();
     541    compiler.objectModule.meta.GetGlobalVars().clear();
    542542    int maxGlobalVars=*(long *)(buffer+i2);
    543543    i2+=sizeof(long);
     
    586586
    587587        //変数を追加
    588         compiler.GetMeta().GetGlobalVars().push_back( pVar );
     588        compiler.objectModule.meta.GetGlobalVars().push_back( pVar );
    589589    }
    590590
     
    604604        const CClass *pClass = NULL;
    605605        if(szParentClassName[0]){
    606             pClass=compiler.GetMeta().GetClasses().Find(szParentClassName);
     606            pClass=compiler.objectModule.meta.GetClasses().Find(szParentClassName);
    607607        }
    608608
     
    698698        i2+=lstrlen(buffer+i2)+1;
    699699
    700         pobj_c =  const_cast<CClass *>( compiler.GetMeta().GetClasses().Find(szClassName) );
     700        pobj_c =  const_cast<CClass *>( compiler.objectModule.meta.GetClasses().Find(szClassName) );
    701701
    702702        //仮想関数の数
     
    755755            const CClass *pobj_InheritsClass = NULL;
    756756            if(szInherits[0]){
    757                 pobj_InheritsClass=compiler.GetMeta().GetClasses().Find(szInherits);
     757                pobj_InheritsClass=compiler.objectModule.meta.GetClasses().Find(szInherits);
    758758            }
    759759
     
    765765            if(pobj_temp_c==0) pobj_temp_c=pobj_c;
    766766
    767             UserProc *pUserProc = compiler.GetMeta().GetUserProcs().GetHashArrayElement( temp2 );
     767            UserProc *pUserProc = compiler.objectModule.meta.GetUserProcs().GetHashArrayElement( temp2 );
    768768            while(pUserProc){
    769769                if( pUserProc->GetName() == temp2 &&pUserProc->GetParentClassPtr()==pobj_temp_c)
     
    821821
    822822
    823     compiler.GetMeta().GetUserProcs() = userProcs;
     823    compiler.objectModule.meta.GetUserProcs() = userProcs;
    824824    pSub_DebugSys_EndProc=GetSubHash("_DebugSys_EndProc");
    825825
     
    962962
    963963    // クラス情報
    964     compiler.GetMeta().SetClasses( this->pobj_DBClass );
     964    compiler.objectModule.meta.SetClasses( this->pobj_DBClass );
    965965
    966966    //定数を取得
    967     compiler.GetMeta().GetGlobalConsts() = this->globalConsts;
    968     compiler.GetMeta().GetGlobalConstMacros() = this->globalConstMacros;
     967    compiler.objectModule.meta.GetGlobalConsts() = this->globalConsts;
     968    compiler.objectModule.meta.GetGlobalConstMacros() = this->globalConstMacros;
    969969
    970970    //グローバル実行領域のサイズ
     
    973973
    974974    //プロシージャ
    975     compiler.GetMeta().GetUserProcs() = userProcs;
     975    compiler.objectModule.meta.GetUserProcs() = userProcs;
    976976
    977977    extern const UserProc *pSub_DebugSys_EndProc;
Note: See TracChangeset for help on using the changeset viewer.