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/src/Class.cpp

    r232 r256  
    189189
    190190        //継承元クラスを取得
    191         const CClass *pInheritsClass = compiler.GetMeta().GetClasses().Find(temporary);
     191        const CClass *pInheritsClass = compiler.objectModule.meta.GetClasses().Find(temporary);
    192192        if( !pInheritsClass ){
    193193            SmoothieException::Throw(106,temporary,nowLine);
     
    219219    if( !isInheritsClass ){
    220220        // クラスを一つも継承していないとき
    221         const CClass *pObjectClass = compiler.GetMeta().GetClasses().Find("Object");
     221        const CClass *pObjectClass = compiler.objectModule.meta.GetClasses().Find("Object");
    222222        if( !pObjectClass ){
    223223            SmoothieException::Throw(106,"Object",i);
     
    243243
    244244        //継承元クラスを取得
    245         const CClass *pInheritsClass = compiler.GetMeta().GetClasses().Find(temporary);
     245        const CClass *pInheritsClass = compiler.objectModule.meta.GetClasses().Find(temporary);
    246246        if( !pInheritsClass ){
    247247            SmoothieException::Throw(106,temporary,nowLine);
     
    282282        //継承先が読み取られていないとき
    283283        pobj_LoopRefCheck->add(this->GetName().c_str());
    284         compiler.GetMeta().GetClasses().GetClass_recur(inheritsClass.GetName().c_str());
     284        compiler.objectModule.meta.GetClasses().GetClass_recur(inheritsClass.GetName().c_str());
    285285        pobj_LoopRefCheck->del(this->GetName().c_str());
    286286    }
     
    344344        //継承先が読み取られていないとき
    345345        pobj_LoopRefCheck->add(this->GetName().c_str());
    346         compiler.GetMeta().GetClasses().GetClass_recur(inheritsInterface.GetName().c_str());
     346        compiler.objectModule.meta.GetClasses().GetClass_recur(inheritsInterface.GetName().c_str());
    347347        pobj_LoopRefCheck->del(this->GetName().c_str());
    348348    }
     
    427427
    428428    //関数ハッシュへ登録
    429     UserProc *pUserProc = compiler.GetMeta().GetUserProcs().Add( NamespaceScopes(), NamespaceScopesCollection(), buffer,nowLine,isVirtual,pobj_c, (bStatic!=0) );
     429    UserProc *pUserProc = compiler.objectModule.meta.GetUserProcs().Add( NamespaceScopes(), NamespaceScopesCollection(), buffer,nowLine,isVirtual,pobj_c, (bStatic!=0) );
    430430    if(!pUserProc) return;
    431431
     
    716716    }
    717717
    718     vtbl_offset=compiler.GetDataTable().AddBinary((void *)ppsi,GetVtblNum()*sizeof(LONG_PTR));
     718    vtbl_offset=compiler.objectModule.dataTable.AddBinary((void *)ppsi,GetVtblNum()*sizeof(LONG_PTR));
    719719
    720720    for( int i=0; i < GetVtblNum(); i++ ){
     
    730730
    731731    LONG_PTR *pVtbl;
    732     pVtbl=(LONG_PTR *)((char *)compiler.GetDataTable().GetPtr()+vtbl_offset);
     732    pVtbl=(LONG_PTR *)((char *)compiler.objectModule.dataTable.GetPtr()+vtbl_offset);
    733733
    734734    int i;
     
    831831
    832832    // Blittable型管理オブジェクトを初期化
    833     compiler.GetMeta().GetBlittableTypes().clear();
     833    compiler.objectModule.meta.GetBlittableTypes().clear();
    834834
    835835    // 名前空間管理
     
    951951
    952952                    // Blittable型として登録
    953                     compiler.GetMeta().GetBlittableTypes().push_back( BlittableType( blittableType, pClass ) );
     953                    compiler.objectModule.meta.GetBlittableTypes().push_back( BlittableType( blittableType, pClass ) );
    954954                }
    955955        }
     
    16561656
    16571657    // TypeDefも見る
    1658     int index = compiler.GetMeta().GetTypeDefs().GetIndex( namespaceScopes, name );
     1658    int index = compiler.objectModule.meta.GetTypeDefs().GetIndex( namespaceScopes, name );
    16591659    if( index != -1 ){
    1660         Type type = compiler.GetMeta().GetTypeDefs()[index].GetBaseType();
     1660        Type type = compiler.objectModule.meta.GetTypeDefs()[index].GetBaseType();
    16611661        if( type.IsObject() ){
    16621662            return &type.GetClass();
Note: See TracChangeset for help on using the changeset viewer.