Ignore:
Timestamp:
Jun 11, 2008, 10:10:26 PM (16 years ago)
Author:
dai_9181
Message:

リンカの依存関係解決モジュールを製作中

File:
1 edited

Legend:

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

    r636 r637  
    4343        this->sourceLines.push_back(
    4444            SourceLine(
    45                 sourceLine.GetLineNum(),
    4645                baseOffset + sourceLine.GetNativeCodePos(),
    47                 sourceLine.GetRelationalObjectModuleIndex(),    // TODO: 複数libの取り込みを想定できていない(ソースコード行番号とネイティブコード位置の対応情報の追加は静的リンクが完了した後に行うべき)
    48                 sourceLine.GetSourceCodePos(),
    49                 sourceLine.GetCodeType()
     46                sourceLine.GetCodeType(),
     47                sourceLine.GetSourceCodePosition()
    5048            )
    5149        );
     
    106104}
    107105
    108 void NativeCode::NextSourceLine( int currentSourceIndex, int nowLine )
     106void NativeCode::NextSourceLine( const SourceCodePosition &sourceCodePosition )
    109107{
    110108    if( sourceLines.size() )
     
    112110        if( sourceLines.back().GetNativeCodePos() == GetSize() )
    113111        {
    114             sourceLines.back().SetSourceCodePos( nowLine );
     112            sourceLines.back().SetSourceCodePosition( sourceCodePosition );
    115113            return;
    116114        }
     
    130128    sourceLines.push_back(
    131129        SourceLine(
    132             (long)sourceLines.size(),
    133130            GetSize(),
    134             currentSourceIndex,
    135             nowLine,
    136             sourceLineType
     131            sourceLineType,
     132            sourceCodePosition
    137133        )
    138134    );
     
    152148    }
    153149}
    154 void NativeCode::ResetSourceIndexes( const std::vector<int> &relationTable )
     150void NativeCode::ResetRelationalObjectModuleIndex( const std::vector<int> &relationTable )
    155151{
    156152    BOOST_FOREACH( SourceLine &sourceLine, sourceLines )
    157153    {
    158         sourceLine.SetRelationalObjectModuleIndex( relationTable[sourceLine.GetRelationalObjectModuleIndex()] );
     154        sourceLine.GetSourceCodePosition().SetRelationalObjectModuleIndex(
     155            relationTable[sourceLine.GetSourceCodePosition().GetRelationalObjectModuleIndex()]
     156        );
    159157    }
    160158}
     159
     160void NativeCode::Resolve()
     161{
     162    // TODO: Resolve
     163}
Note: See TracChangeset for help on using the changeset viewer.