#include #include Symbol::operator String(void) { String strSymbol; String strSymbolType; if(ConstantSymbol==symbolType())strSymbolType="ConstantSymbol"; else if(KeywordSymbol==symbolType())strSymbolType="KeywordSymbol"; else if(RegisterSymbol==symbolType())strSymbolType="RegisterSymbol"; else if(DirectiveSymbol==symbolType())strSymbolType="DirectiveSymbol"; else if(PreprocessorSymbol==symbolType())strSymbol="PreprocessorSymbol"; else if(UserSymbol==symbolType())strSymbolType="UserSymbol"; else if(UnknownSymbol==symbolType())strSymbolType="UnknownSymbol"; ::sprintf(strSymbol,"'%s' id:%d type:%s",(char*)symbolName(),identifier(),(char*)strSymbolType); strSymbol+=String(" ")+Instruction::operator String(); return strSymbol; }