Ignore:
Timestamp:
Mar 10, 2008, 5:39:36 PM (16 years ago)
Author:
dai_9181
Message:

・ジェネリックな型をパラメータに持つメソッドのオーバーロード解決に対応した。
・型パラメータの制約クラス指定に対応した。

File:
1 edited

Legend:

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

    r206 r424  
    2929        char MethodName[VN_SIZE];
    3030        if( !SplitMemberName( name, NULL, MethodName ) ) lstrcpy( MethodName, name );
     31
    3132/*
    3233        //メソッドの場合は静的かどうかを調べる
     
    4041        pobj_parameter=new ParamImpl(Parameter);
    4142
     43        Type leftType;
     44        GetTermType( ObjectName, leftType );
    4245
    43         const UserProc *pUserProc = pobj_parameter->OverloadSolution(name,subs);
     46        const UserProc *pUserProc = pobj_parameter->OverloadSolution( name, subs, leftType );
    4447
    4548
     
    5457    std::vector<const UserProc *> &subs,
    5558    const Parameters &params,
    56     const Type &returnType ){
     59    const Type &returnType,
     60    const Type &leftType )
     61{
    5762
    5863        // オーバーロードの解決
     
    6772        }
    6873
    69         const UserProc *pUserProc = pobj_Parameter->OverloadSolution(name,subs);
     74        const UserProc *pUserProc = pobj_Parameter->OverloadSolution( name, subs, leftType);
    7075
    7176        delete pobj_Parameter;
Note: See TracChangeset for help on using the changeset viewer.