Changeset 509 in dev for trunk/ab5.0/abdev/ab_common
- Timestamp:
- Apr 29, 2008, 12:27:10 PM (17 years ago)
- Location:
- trunk/ab5.0/abdev/ab_common
- Files:
-
- 2 edited
- 2 moved
Legend:
- Unmodified
- Added
- Removed
-
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>
Note:
See TracChangeset
for help on using the changeset viewer.