10 #ifndef _EMBEDDED_RPC__SYMBOL_H_ 11 #define _EMBEDDED_RPC__SYMBOL_H_ 13 #include "Annotation.h" 42 kUnionCaseMemberSymbol,
99 ,
m_name(tok.getStringValue())
207 std::vector<Annotation *>
getAnnotations(std::string name, Annotation::program_lang_t lang);
224 Value *
getAnnValue(
const std::string annName, Annotation::program_lang_t lang);
234 std::string
getAnnStringValue(
const std::string annName, Annotation::program_lang_t lang);
275 #endif // _EMBEDDED_RPC__SYMBOL_H_ std::string printAnnotations()
This function returns description about annotation.
Definition: Type.cpp:61
Annotation class.
Definition: Annotation.h:27
std::string getMlComment()
This function returns multiline comment for this symbol declared in IDL file.
Definition: Symbol.h:241
Symbol(symbol_type_t symType)
Constructor.
Definition: Symbol.h:61
std::string m_ilComment
Definition: Symbol.h:270
int getFirstLine() const
This function return first line from location of symbol.
Definition: Symbol.h:152
virtual bool isBuiltin() const
This function return "false" value as default for identify builtin type.
Definition: Symbol.h:166
int m_lastLine
Definition: Token.h:29
Value * getAnnValue(const std::string annName, Annotation::program_lang_t lang)
This function search and returns Value object for given annotation name.
Definition: Type.cpp:108
std::string getAnnStringValue(const std::string annName, Annotation::program_lang_t lang)
This function search and returns string for given annotation name.
Definition: Type.cpp:114
const std::vector< Annotation > & getAnnotations() const
Return all Symbol annotations.
Definition: Symbol.h:214
std::string m_name
Definition: Symbol.h:266
Symbol(symbol_type_t symType, const Token &tok)
Constructor.
Definition: Symbol.h:97
int m_firstLine
Definition: Token.h:27
void setLocation(const token_loc_t &loc)
This function set location for symbol.
Definition: Symbol.h:145
Base class for all named declarations in the IDL.
Definition: Symbol.h:27
token_loc_t & getLocation()
This function returns location for symbol.
Definition: Symbol.h:138
symbol_type_t m_symbolType
Definition: Symbol.h:265
Abstract base class for values of arbitrary types.
Definition: Value.h:21
std::vector< Annotation > m_annotations
Definition: Symbol.h:268
std::string getIlComment()
This function returns inline comment for this symbol declared in IDL file.
Definition: Symbol.h:255
token_loc_t m_location
Definition: Symbol.h:267
std::string m_mlComment
Definition: Symbol.h:269
const std::string & getName() const
This function returns symbol name.
Definition: Symbol.h:124
Encapsulates all information about a token.
Definition: Token.h:60
virtual std::string getDescription() const
This function returns description about the symbol (symbol name).
Definition: Symbol.h:173
int getLastLine() const
This function return last line from location of symbol.
Definition: Symbol.h:159
void setIlComment(std::string comment)
This function set inline comment for this symbol declared in IDL file.
Definition: Symbol.h:262
symbol_type_t getSymbolType() const
This function returns symbol type.
Definition: Symbol.h:117
void setMlComment(std::string comment)
This function set multiline comment for this symbol declared in IDL file.
Definition: Symbol.h:248
void setName(const std::string &newName)
This function set symbol name.
Definition: Symbol.h:131
Annotation * findAnnotation(std::string name, Annotation::program_lang_t lang)
Find annotation in the annotation list.
Definition: Type.cpp:81
virtual ~Symbol()
Destructor.
Definition: Symbol.h:110
Token location in the source file.
Definition: Token.h:25
void addAnnotation(const Annotation &a)
This function add annotation to vector of symbol annotations.
Definition: Symbol.h:180
symbol_type_t
Supported symbol types.
Definition: Symbol.h:33
Symbol(symbol_type_t symType, const std::string &name)
Constructor.
Definition: Symbol.h:79