- Timestamp:
- Apr 29, 2008, 12:27:10 PM (17 years ago)
- Location:
- trunk/ab5.0/abdev
- Files:
-
- 13 edited
- 2 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/ab5.0/abdev/BasicCompiler_Common/hash.cpp
r485 r509 10 10 #include "../compiler_x86/opcode.h" 11 11 #endif 12 13 using namespace ActiveBasic::Compiler; 12 14 13 15 int hash_default(const char *name){ … … 33 35 DllProc *pDllProc = compiler.GetObjectModule().meta.GetDllProcs().GetHashArrayElement( simpleName ); 34 36 while(pDllProc){ 35 if( pDllProc->IsEqualSymbol( fullName) ){37 if( pDllProc->IsEqualSymbol( LexicalAnalyzer::FullNameToSymbol( fullName ) ) ){ 36 38 return pDllProc; 37 39 } -
trunk/ab5.0/abdev/BasicCompiler_Common/include/Const.h
r271 r509 2 2 3 3 #include <Type.h> 4 #include <Symbol.h>5 4 6 5 -
trunk/ab5.0/abdev/BasicCompiler_Common/include/Prototype.h
r276 r509 3 3 #include <string> 4 4 #include <vector> 5 6 #include <BoostSerializationSupport.h>7 8 #include <Symbol.h>9 5 10 6 using namespace std; -
trunk/ab5.0/abdev/BasicCompiler_Common/include/TypeDef.h
r505 r509 5 5 6 6 #include <Type.h> 7 #include <Symbol.h>8 7 9 8 using namespace std; -
trunk/ab5.0/abdev/BasicCompiler_Common/include/Variable.h
r508 r509 3 3 #include <option.h> 4 4 #include <Program.h> 5 #include <Symbol.h>6 5 #include <Type.h> 7 6 #include <Binary.h> -
trunk/ab5.0/abdev/BasicCompiler_Common/src/Const.cpp
r465 r509 3 3 #include <Compiler.h> 4 4 5 using namespace ActiveBasic::Compiler; 5 6 6 7 double CConst::GetDoubleData(){ … … 81 82 while( pConst ) 82 83 { 83 if( pConst->IsEqualSymbol( name) )84 if( pConst->IsEqualSymbol( LexicalAnalyzer::FullNameToSymbol( name ) ) ) 84 85 { 85 86 break; … … 251 252 while( pConstMacro ) 252 253 { 253 if( pConstMacro->IsEqualSymbol( name) )254 if( pConstMacro->IsEqualSymbol( LexicalAnalyzer::FullNameToSymbol( name ) ) ) 254 255 { 255 256 break; -
trunk/ab5.0/abdev/BasicCompiler_Common/src/ObjectModule.cpp
r508 r509 45 45 #include <abdev/ab_common/include/Namespace.h> 46 46 #include <abdev/ab_common/include/NamespaceSupporter.h> 47 #include <abdev/ab_common/include/Symbol.h> 47 48 48 49 using namespace ActiveBasic::Common::Lexical; … … 50 51 #include <Hashmap.h> 51 52 #include <Configuration.h> 52 #include <Symbol.h>53 53 #include <LexicalAnalyzer.h> 54 54 #include <Program.h> -
trunk/ab5.0/abdev/BasicCompiler_Common/src/Procedure.cpp
r507 r509 10 10 #include "../../compiler_x86/opcode.h" 11 11 #endif 12 13 using namespace ActiveBasic::Compiler; 12 14 13 15 … … 695 697 while(pUserProc){ 696 698 if( pUserProc->IsGlobalProcedure() ){ 697 if( pUserProc->IsEqualSymbol( localName) ){699 if( pUserProc->IsEqualSymbol( LexicalAnalyzer::FullNameToSymbol( localName ) ) ){ 698 700 subs.push_back( pUserProc ); 699 701 } -
trunk/ab5.0/abdev/ab_common/ab_common.vcproj
r507 r509 324 324 > 325 325 </File> 326 <File 327 RelativePath=".\include\Symbol.h" 328 > 329 </File> 326 330 </Filter> 327 331 </Filter> … … 350 354 > 351 355 </File> 356 <File 357 RelativePath=".\src\Symbol.cpp" 358 > 359 </File> 352 360 </Filter> 353 361 </Filter> -
trunk/ab5.0/abdev/ab_common/include/Symbol.h
r508 r509 1 1 #pragma once 2 2 3 #include <vector> 4 #include <string> 3 namespace ActiveBasic{ namespace Common{ namespace Lexical{ 5 4 6 #include <BoostSerializationSupport.h>7 8 using namespace std;9 5 10 6 class Symbol … … 13 9 14 10 NamespaceScopes namespaceScopes; 15 st ring name;11 std::string name; 16 12 17 13 // XMLシリアライズ用 … … 41 37 public: 42 38 bool isTargetObjectModule; 43 Symbol( const NamespaceScopes &namespaceScopes, const st ring &name )39 Symbol( const NamespaceScopes &namespaceScopes, const std::string &name ) 44 40 : namespaceScopes( namespaceScopes ) 45 41 , name( name ) … … 67 63 return namespaceScopes; 68 64 } 69 const st ring &GetName() const65 const std::string &GetName() const 70 66 { 71 67 return name; … … 74 70 75 71 // シンボル比較 76 bool IsEqualSymbol( const NamespaceScopes &namespaceScopes, const st ring &name ) const;72 bool IsEqualSymbol( const NamespaceScopes &namespaceScopes, const std::string &name ) const; 77 73 bool IsEqualSymbol( const Symbol &symbol ) const; 78 bool IsEqualSymbol( const char *fullName ) const;79 bool IsEqualSymbol( const string &fullName ) const80 {81 return IsEqualSymbol( fullName.c_str() );82 }83 74 }; 75 76 77 }}} -
trunk/ab5.0/abdev/ab_common/src/Symbol.cpp
r508 r509 1 1 #include "stdafx.h" 2 2 3 #include <Compiler.h> 4 #include <Symbol.h> 3 using namespace ActiveBasic::Common::Lexical; 5 4 6 5 const NamespaceSupporter *Symbol::namespaceSupporter = NULL; … … 16 15 } 17 16 18 bool Symbol::IsEqualSymbol( const NamespaceScopes &namespaceScopes, const st ring &name ) const17 bool Symbol::IsEqualSymbol( const NamespaceScopes &namespaceScopes, const std::string &name ) const 19 18 { 20 19 if( GetName() != name ){ … … 36 35 // 静的メンバを考慮 37 36 NamespaceScopes namespaceScopes( symbol.GetNamespaceScopes() ); 38 st ring name = namespaceScopes[namespaceScopes.size()-1] + "." + symbol.GetName();37 std::string name = namespaceScopes[namespaceScopes.size()-1] + "." + symbol.GetName(); 39 38 namespaceScopes.pop_back(); 40 39 … … 43 42 return false; 44 43 } 45 bool Symbol::IsEqualSymbol( const char *fullName ) const46 {47 char AreaName[VN_SIZE] = ""; //オブジェクト変数48 char NestName[VN_SIZE] = ""; //入れ子メンバ49 bool isNest = SplitMemberName( fullName, AreaName, NestName );50 51 if( IsEqualSymbol( NamespaceScopes( AreaName ), NestName ) ){52 return true;53 }54 55 return false;56 } -
trunk/ab5.0/abdev/ab_common/stdafx.h
r507 r509 35 35 #include <Namespace.h> 36 36 #include <NamespaceSupporter.h> 37 #include <Symbol.h> -
trunk/ab5.0/abdev/compiler_x86/Compile_CallProc.cpp
r465 r509 5 5 #include "../BasicCompiler_Common/common.h" 6 6 #include "Opcode.h" 7 8 using namespace ActiveBasic::Compiler; 7 9 8 10 void Call_DebugSys_SaveContext(){ … … 435 437 { 436 438 extern BOOL bDebugSupportProc; 437 if( compiler.IsDebug() && bDebugSupportProc==0 && pDllProc->IsEqualSymbol( "DebugBreak") )439 if( compiler.IsDebug() && bDebugSupportProc==0 && pDllProc->IsEqualSymbol( LexicalAnalyzer::FullNameToSymbol( "DebugBreak" ) ) ) 438 440 { 439 441 Call_DebugSys_SaveContext(); -
trunk/ab5.0/abdev/compiler_x86/compiler_x86.vcproj
r507 r509 1344 1344 </File> 1345 1345 <File 1346 RelativePath="..\BasicCompiler_Common\src\Symbol.cpp"1347 >1348 </File>1349 <File1350 1346 RelativePath="..\BasicCompiler_Common\src\Type.cpp" 1351 1347 > … … 1541 1537 </File> 1542 1538 <File 1543 RelativePath="..\BasicCompiler_Common\include\Symbol.h"1544 >1545 </File>1546 <File1547 1539 RelativePath="..\BasicCompiler_Common\include\Type.h" 1548 1540 > -
trunk/ab5.0/abdev/compiler_x86/stdafx.h
r508 r509 34 34 #include <abdev/ab_common/include/Namespace.h> 35 35 #include <abdev/ab_common/include/NamespaceSupporter.h> 36 #include <abdev/ab_common/include/Symbol.h> 36 37 37 38 using namespace ActiveBasic::Common::Lexical; … … 42 43 #include <Hashmap.h> 43 44 #include <Configuration.h> 44 #include <Symbol.h>45 45 #include <LexicalAnalyzer.h> 46 46 #include <Program.h>
Note:
See TracChangeset
for help on using the changeset viewer.