Initial
This commit is contained in:
126
http/SYMBOL.HPP
Normal file
126
http/SYMBOL.HPP
Normal file
@@ -0,0 +1,126 @@
|
||||
#ifndef _HTTP_SYMBOL_HPP_
|
||||
#define _HTTP_SYMBOL_HPP_
|
||||
#ifndef _COMMON_STRING_HPP_
|
||||
#include <common/string.hpp>
|
||||
#endif
|
||||
|
||||
class Symbol
|
||||
{
|
||||
public:
|
||||
enum SymbolType{AssignedSymbol,ConstantSymbol,SystemSymbol,
|
||||
CommandSymbol,UserSymbol,UnknownSymbol};
|
||||
Symbol(void);
|
||||
Symbol(const Symbol &someSymbol);
|
||||
Symbol(const String &symbolString,int identifier,SymbolType symbolType);
|
||||
virtual ~Symbol();
|
||||
Symbol &operator=(const Symbol &someSymbol);
|
||||
int operator==(const Symbol &someSymbol)const;
|
||||
int operator==(const String &symbolString)const;
|
||||
String symbolName(void)const;
|
||||
void symbolName(const String &symbolName);
|
||||
int identifier(void)const;
|
||||
void identifier(int identifier);
|
||||
SymbolType symbolType(void)const;
|
||||
void symbolType(SymbolType symbolType);
|
||||
void symbolValue(double symbolValue);
|
||||
double symbolValue(void)const;
|
||||
private:
|
||||
String mSymbolName;
|
||||
int mIdentifier;
|
||||
SymbolType mSymbolType;
|
||||
double mSymbolValue;
|
||||
};
|
||||
|
||||
inline
|
||||
Symbol::Symbol(void)
|
||||
: mIdentifier(0), mSymbolType(UnknownSymbol), mSymbolValue(0.00)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
Symbol::Symbol(const Symbol &someSymbol)
|
||||
{
|
||||
*this=someSymbol;
|
||||
}
|
||||
|
||||
inline
|
||||
Symbol::Symbol(const String &symbolString,int identifier,SymbolType symbolType)
|
||||
: mSymbolName(symbolString), mSymbolType(symbolType), mIdentifier(identifier)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
Symbol::~Symbol()
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
int Symbol::operator==(const Symbol &someSymbol)const
|
||||
{
|
||||
return (mSymbolName==someSymbol.mSymbolName);
|
||||
}
|
||||
|
||||
inline
|
||||
int Symbol::operator==(const String &symbolName)const
|
||||
{
|
||||
return (mSymbolName==symbolName);
|
||||
}
|
||||
|
||||
inline
|
||||
Symbol &Symbol::operator=(const Symbol &someSymbol)
|
||||
{
|
||||
symbolName(someSymbol.symbolName());
|
||||
identifier(someSymbol.identifier());
|
||||
symbolType(someSymbol.symbolType());
|
||||
symbolValue(someSymbol.symbolValue());
|
||||
return *this;
|
||||
}
|
||||
|
||||
inline
|
||||
String Symbol::symbolName(void)const
|
||||
{
|
||||
return mSymbolName;
|
||||
}
|
||||
|
||||
inline
|
||||
void Symbol::symbolName(const String &symbolName)
|
||||
{
|
||||
mSymbolName=symbolName;
|
||||
}
|
||||
|
||||
inline
|
||||
Symbol::SymbolType Symbol::symbolType(void)const
|
||||
{
|
||||
return mSymbolType;
|
||||
}
|
||||
|
||||
inline
|
||||
void Symbol::symbolType(SymbolType symbolType)
|
||||
{
|
||||
mSymbolType=symbolType;
|
||||
}
|
||||
|
||||
inline
|
||||
int Symbol::identifier(void)const
|
||||
{
|
||||
return mIdentifier;
|
||||
}
|
||||
|
||||
inline
|
||||
void Symbol::identifier(int identifier)
|
||||
{
|
||||
mIdentifier=identifier;
|
||||
}
|
||||
|
||||
inline
|
||||
void Symbol::symbolValue(double symbolValue)
|
||||
{
|
||||
mSymbolValue=symbolValue;
|
||||
}
|
||||
|
||||
inline
|
||||
double Symbol::symbolValue(void)const
|
||||
{
|
||||
return mSymbolValue;
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user