source: dev/trunk/jenga/include/smoothie/Symbol.h@ 190

Last change on this file since 190 was 190, checked in by dai_9181, 17 years ago
File size: 852 bytes
Line 
1#pragma once
2
3#include <vector>
4#include <string>
5
6#include <jenga/include/common/BoostXmlSupport.h>
7
8#include "Namespace.h"
9
10using namespace std;
11
12class Symbol
13{
14 NamespaceScopes namespaceScopes;
15 string name;
16public:
17 Symbol( const NamespaceScopes &namespaceScopes, const string &name )
18 : namespaceScopes( namespaceScopes )
19 , name( name )
20 {
21 }
22 Symbol( const char *fullName );
23 Symbol( const string &fullName );
24 Symbol()
25 {
26 }
27
28 const NamespaceScopes &GetNamespaceScopes() const
29 {
30 return namespaceScopes;
31 }
32 const string &GetName() const
33 {
34 return name;
35 }
36
37private:
38 friend class boost::serialization::access;
39 template<class Archive> void serialize(Archive& ar, const unsigned int version)
40 {
41 //ar & BOOST_SERIALIZATION_NVP( namespaceScopes );
42 ar & BOOST_SERIALIZATION_NVP( name );
43 }
44};
Note: See TracBrowser for help on using the repository browser.