Changeset 128 in dev for BasicCompiler_Common/Class.cpp
- Timestamp:
- May 18, 2007, 4:42:36 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
BasicCompiler_Common/Class.cpp
r127 r128 911 911 char temporary[VN_SIZE]; 912 912 913 // Blittable型管理オブジェクトを初期化 914 Smoothie::Meta::blittableTypes.clear(); 915 913 916 // 名前空間管理 914 917 NamespaceScopes &namespaceScopes = Smoothie::Lexical::liveingNamespaceScopes; … … 971 974 972 975 i+=2; 973 //アラインメント修飾子976 Type blittableType; 974 977 if(memicmp(basbuf+i,"Align(",6)==0){ 978 //アラインメント修飾子 975 979 i+=6; 976 980 i=JumpStringInPare(basbuf,i)+1; 981 } 982 else if( memicmp( basbuf + i, "Blittable(", 10 ) == 0 ){ 983 // Blittable修飾子 984 i+=10; 985 i+=GetStringInPare_RemovePare(temporary,basbuf+i)+1; 986 Type::StringToType( temporary, blittableType ); 977 987 } 978 988 … … 1013 1023 } 1014 1024 } 1025 1026 // Blittable型の場合 1027 if( !blittableType.IsNull() ){ 1028 pClass->SetBlittableType( blittableType ); 1029 1030 // Blittable型として登録 1031 Smoothie::Meta::blittableTypes.push_back( BlittableType( blittableType, pClass ) ); 1032 } 1015 1033 } 1016 1034 } … … 1344 1362 i+=2; 1345 1363 1346 //アラインメント修飾子1347 1364 int iAlign=0; 1348 1365 if(memicmp(basbuf+i,"Align(",6)==0){ 1366 //アラインメント修飾子 1349 1367 i+=6; 1350 1368 i+=GetStringInPare_RemovePare(temporary,basbuf+i)+1; … … 1353 1371 if(!(iAlign==1||iAlign==2||iAlign==4||iAlign==8||iAlign==16)) 1354 1372 SetError(51,NULL,i); 1373 } 1374 else if( memicmp( basbuf + i, "Blittable(", 10 ) == 0 ){ 1375 // Blittable修飾子 1376 i+=10; 1377 i=JumpStringInPare(basbuf,i)+1; 1355 1378 } 1356 1379 … … 1416 1439 goto InheritsError; 1417 1440 } 1418 }1419 else if( memicmp( basbuf + i+1,"Blittable", 9 ) == 0 &&1420 basbuf[i+10] == 1 && basbuf[i+11] == ESC_INHERITS ){1421 // Blittable Inherits1422 1423 for(i+=12,i2=0;;i++,i2++){1424 if(IsCommandDelimitation(basbuf[i])){1425 temporary[i2]=0;1426 break;1427 }1428 temporary[i2]=basbuf[i];1429 }1430 1431 Type type;1432 Type::StringToType( temporary, type );1433 pobj_c->SetBlittableType( type );1434 1435 1441 } 1436 1442
Note:
See TracChangeset
for help on using the changeset viewer.