sencha-lang/Sencha-lang/ASTInspector.h

32 lines
611 B
C++

/*
* ASTInspector.h
*
* Created on: Dec 17, 2012
* Author: att
*/
#ifndef ASTINSPECTOR_H_
#define ASTINSPECTOR_H_
#include <map>
#include "Visitor.h"
#include "AST/AllTypesOfASTNodes.h"
class ASTInspector: public Visitor {
public:
ASTInspector();
typedef unsigned int NumberOfNodes;
std::map<std::string, NumberOfNodes> occurences;
virtual void visit(ASTNode * node);
virtual void visit(ConstantExpression * node);
virtual void visit(BasicExpression * node);
void visit(PostfixExpression * node);
void visit(WhileNode * node);
virtual ~ASTInspector();
};
#endif /* ASTINSPECTOR_H_ */