Ignore:
Timestamp:
Jun 19, 2007, 1:58:06 AM (17 years ago)
Author:
dai_9181
Message:

コンパイルできるようにした

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/jenga/include/smoothie/Member.h

    r170 r171  
    6060    {
    6161    }
    62     CMember( CClass *pobj_c, Prototype::Accessibility accessibility, bool idConst, bool isRef, char *buffer, int nowLine=-1 );
    63     CMember( CMember &member );
    64     ~CMember();
     62    CMember::CMember(CMember &member)
     63        : MemberPrototype( member.GetAccessibility() )
     64        , name( member.GetName() )
     65        , type( member.GetType() )
     66        , isConst( member.IsConst() )
     67    {
     68        //SubScripts
     69        memcpy(SubScripts,member.SubScripts,MAX_ARRAYDIM*sizeof(int));
     70
     71        //ソースコードの位置
     72        source_code_address=member.source_code_address;
     73    }
     74    ~CMember()
     75    {
     76    }
    6577    static void InitStaticMember(void);
    66 
    67     static bool SplitName( const char *desc, char *object, char *member, CClass::RefType &refType ){
    68         int lastIndex = -1;
    69         for( int i=0; desc[i]; i++ ){
    70             if( desc[i] == '(' ){
    71                 i=BasicSource::JumpStringInPare(desc,i+1);
    72                 continue;
    73             }
    74             else if( desc[i] == '[' ){
    75                 i=BasicSource::JumpStringInBracket(desc,i+1);
    76                 continue;
    77             }
    78             else if(desc[i]=='.'||(desc[i]==1&&desc[i+1]==ESC_PSMEM)){
    79                 lastIndex = i;
    80             }
    81         }
    82         if( lastIndex == -1 ){
    83             lstrcpy( member, desc );
    84             return false;
    85         }
    86 
    87         if(desc[lastIndex]=='.'){
    88             lstrcpy(member,desc+lastIndex+1);
    89             refType = CClass::Dot;
    90         }
    91         else{
    92             lstrcpy(member,desc+lastIndex+2);
    93             refType = CClass::Pointer;
    94         }
    95 
    96         if( object ){
    97             lstrcpy( object, desc );
    98             object[lastIndex]=0;
    99         }
    100 
    101         return true;
    102     }
    103     static bool SplitName( const char *desc, char *object, char *member ){
    104         CClass::RefType dummyRefType;
    105         return SplitName( desc, object, member, dummyRefType );
    106     }
    10778};
    10879typedef std::vector<CMember *> Members;
Note: See TracChangeset for help on using the changeset viewer.