Ignore:
Timestamp:
May 7, 2008, 10:12:21 AM (17 years ago)
Author:
dai_9181
Message:

ParseDllProc/SetParamsAndReturnTypeForUserProcを実装。

Location:
trunk/ab5.0/abdev/BasicCompiler_Common/include
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/ab5.0/abdev/BasicCompiler_Common/include/LexicalAnalyzer.h

    r571 r572  
    5656    // グローバルプロシージャを収集する
    5757    static bool AnalyzeParameter( Parameters &params, const Jenga::Common::Strings &parameterStrings, int nowLine );
     58    static bool SetParamsAndReturnTypeForUserProc( UserProc &userProc, const char *sourceOfParams, int nowLine, bool isStatic );
    5859    static UserProc* ParseUserProc( const NamespaceScopes &namespaceScopes, const NamespaceScopesCollection &importedNamespaces, char *buffer,int nowLine,bool isVirtual,CClass *pobj_c, bool isStatic, char *interfaceName = NULL );
     60    static DllProc *ParseDllProc(const NamespaceScopes &namespaceScopes, char *buffer,int nowLine);
    5961    static void CollectProcedures( const char *source, UserProcs &userProcs, DllProcs &dllProcs );
    6062
  • trunk/ab5.0/abdev/BasicCompiler_Common/include/Procedure.h

    r537 r572  
    2020    mutable bool isUsing;
    2121
    22 protected:
    23 
    2422    // パラメータ
    2523    Parameters params;
     24
     25protected:
    2626
    2727    // 戻り値の型
     
    9191        return codePos;
    9292    }
     93    void SetCodePos( int codePos )
     94    {
     95        this->codePos = codePos;
     96    }
    9397
    9498    const Parameters &Params() const
     
    96100        return params;
    97101    }
     102    Parameters &GetParameters()
     103    {
     104        return params;
     105    }
    98106    const Type &ReturnType() const
     107    {
     108        return returnType;
     109    }
     110    Type &ReturnType()
    99111    {
    100112        return returnType;
     
    238250        return secondParmNum;
    239251    }
     252    void SetSecondParmNum( int secondParmNum )
     253    {
     254        this->secondParmNum = secondParmNum;
     255    }
    240256    const Parameters &RealParams() const
     257    {
     258        return realParams;
     259    }
     260    Parameters &RealParams()
    241261    {
    242262        return realParams;
     
    481501            boost::serialization::base_object<Jenga::Common::Hashmap<DllProc>>(*this));
    482502    }
    483 
    484 public:
    485     void Add(const NamespaceScopes &namespaceScopes, char *buffer,int nowLine);
    486503};
    487504
Note: See TracChangeset for help on using the changeset viewer.