Ignore:
Timestamp:
Mar 24, 2008, 8:05:20 PM (17 years ago)
Author:
dai_9181
Message:

Messenger/ErrorMessengerクラスを導入。SetError関数によるエラー生成を廃止した。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ab5.0/abdev/BasicCompiler_Common/src/NativeCode.cpp

    r370 r465  
    44
    55#define BREAK_EIP(checkEip)  (obp+0x00401000>=checkEip)
     6
     7const ::DllProc &Schedule::GetDllProc() const
     8{
     9    if( type != Schedule::DllProc )
     10    {
     11        compiler.errorMessenger.OutputFatalError();
     12    }
     13    return *pDllProc;
     14}
     15const ::UserProc &Schedule::GetUserProc() const
     16{
     17    if( !( type == Schedule::UserProc || type == Schedule::AddressOf || type == Schedule::CatchAddress ) )
     18    {
     19        compiler.errorMessenger.OutputFatalError();
     20    }
     21    return *pUserProc;
     22}
     23const ::CClass &Schedule::GetClass() const
     24{
     25    if( !( type == Schedule::ComVtbl || type == Schedule::Vtbl || type == Schedule::TypeInfo ) )
     26    {
     27        compiler.errorMessenger.OutputFatalError();
     28    }
     29    return *pClass;
     30}
     31
     32void Schedule::SpecifyAddressOf()
     33{
     34    if( type != Schedule::UserProc )
     35    {
     36        compiler.errorMessenger.OutputFatalError();
     37    }
     38    type = Schedule::AddressOf;
     39}
     40void Schedule::SpecifyCatchAddress()
     41{
     42    if( type != Schedule::UserProc )
     43    {
     44        compiler.errorMessenger.OutputFatalError();
     45    }
     46    type = Schedule::CatchAddress;
     47}
    648
    749void NativeCode::PutEx( const NativeCode &nativeCode )
Note: See TracChangeset for help on using the changeset viewer.