data: Extended CxxParser to detect elements
Detects most elements in the code, currently classes, structs, global variables, fields, functions, methods, namespaces and enums. The structs ParseLocation and ParseVariable are helper objects to transmit information to the ParserClient. Currently the parsed information only gets logged in the Storage. review id = 15 fortune cookie message = In dreams and in life, nothing is impossible.
This commit is contained in:
+21
-2
@@ -12,11 +12,30 @@ class Storage: public ParserClient
|
||||
{
|
||||
public:
|
||||
Storage();
|
||||
~Storage();
|
||||
virtual ~Storage();
|
||||
|
||||
virtual void addClass(const ParseObject& object);
|
||||
virtual void onClassParsed(const ParseLocation& location, const std::string& fullName, AccessType access);
|
||||
virtual void onStructParsed(const ParseLocation& location, const std::string& fullName, AccessType access);
|
||||
|
||||
virtual void onGlobalVariableParsed(const ParseLocation& location, const ParseVariable& variable);
|
||||
virtual void onFieldParsed(const ParseLocation& location, const ParseVariable& variable, AccessType access);
|
||||
|
||||
virtual void onFunctionParsed(
|
||||
const ParseLocation& location, const std::string& fullName, const std::string& returnTypeName,
|
||||
const std::vector<ParseVariable>& parameters);
|
||||
virtual void onMethodParsed(
|
||||
const ParseLocation& location, const std::string& fullName, const std::string& returnTypeName,
|
||||
const std::vector<ParseVariable>& parameters, AccessType access, AbstractionType abstraction,
|
||||
bool isConst, bool isStatic);
|
||||
|
||||
virtual void onNamespaceParsed(const ParseLocation& location, const std::string& fullName);
|
||||
|
||||
virtual void onEnumParsed(const ParseLocation& location, const std::string& fullName, AccessType access);
|
||||
virtual void onEnumFieldParsed(const ParseLocation& location, const std::string& fullName);
|
||||
|
||||
private:
|
||||
void log(std::string type, std::string str, const ParseLocation& location) const;
|
||||
|
||||
Graph m_graph;
|
||||
|
||||
std::vector<std::shared_ptr<TextLocationFile> > m_textLocationFiles;
|
||||
|
||||
Reference in New Issue
Block a user