mjplusplus  v0.4.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
firm::visitor::ProgramVisitor Class Reference

#include <ProgramVisitor.hpp>

Inheritance diagram for firm::visitor::ProgramVisitor:
firm::visitor::FirmVisitor ast::ASTVisitor

Public Member Functions

virtual void visit (shptr< const ast::Program > program)
 
- Public Member Functions inherited from firm::visitor::FirmVisitor
 FirmVisitor ()
 
virtual void setOwner (ir_type *owner)
 
virtual ir_type * getOwner () const
 
- Public Member Functions inherited from ast::ASTVisitor
virtual void visit (shptr< Node const > node)
 
virtual void visit (shptr< Arguments const > node)
 
virtual void visit (shptr< be::BinaryExpression const > node)
 
virtual void visit (shptr< be::AndAnd const > node)
 
virtual void visit (shptr< be::Eq const > node)
 
virtual void visit (shptr< be::EqEq const > node)
 
virtual void visit (shptr< be::GreaterThan const > node)
 
virtual void visit (shptr< be::GreaterThanEq const > node)
 
virtual void visit (shptr< be::Invalid const > node)
 
virtual void visit (shptr< be::LessThan const > node)
 
virtual void visit (shptr< be::LessThanEq const > node)
 
virtual void visit (shptr< be::Minus const > node)
 
virtual void visit (shptr< be::Mod const > node)
 
virtual void visit (shptr< be::Mult const > node)
 
virtual void visit (shptr< be::NotEq const > node)
 
virtual void visit (shptr< be::OrOr const > node)
 
virtual void visit (shptr< be::Plus const > node)
 
virtual void visit (shptr< be::Slash const > node)
 
virtual void visit (shptr< ClassDeclaration const > node)
 
virtual void visit (shptr< ClassMember const > node)
 
virtual void visit (shptr< Expression const > node)
 
virtual void visit (shptr< FieldDeclaration const > node)
 
virtual void visit (shptr< Ident const > node)
 
virtual void visit (shptr< MainMethodDeclaration const > node)
 
virtual void visit (shptr< MethodDeclaration const > node)
 
virtual void visit (shptr< pe::PrimaryExpression const > node)
 
virtual void visit (shptr< pe::Bool const > node)
 
virtual void visit (shptr< pe::Ident const > node)
 
virtual void visit (shptr< pe::Integer const > node)
 
virtual void visit (shptr< pe::MethodInvocation const > node)
 
virtual void visit (shptr< pe::NewArrayExpression const > node)
 
virtual void visit (shptr< pe::NewObjectExpression const > node)
 
virtual void visit (shptr< pe::Object const > node)
 
virtual void visit (shptr< po::PostfixExpression const > node)
 
virtual void visit (shptr< po::PostfixOp const > node)
 
virtual void visit (shptr< po::ArrayAccess const > node)
 
virtual void visit (shptr< po::FieldAccess const > node)
 
virtual void visit (shptr< po::MethodInvocation const > node)
 
virtual void visit (shptr< stmt::Statement const > node)
 
virtual void visit (shptr< stmt::Block const > node)
 
virtual void visit (shptr< stmt::ExpressionStatement const > node)
 
virtual void visit (shptr< stmt::IfStatement const > node)
 
virtual void visit (shptr< stmt::LVDStatement const > node)
 
virtual void visit (shptr< stmt::ReturnStatement const > node)
 
virtual void visit (shptr< stmt::WhileStatement const > node)
 
virtual void visit (shptr< Type const > node)
 
virtual void visit (shptr< TypeIdent const > node)
 
virtual void visit (shptr< ue::UnaryExpression const > node)
 
virtual void visit (shptr< ue::Neg const > node)
 
virtual void visit (shptr< ue::Not const > node)
 

Additional Inherited Members

- Protected Attributes inherited from firm::visitor::FirmVisitor
ir_type * owner
 

Member Function Documentation

void firm::visitor::ProgramVisitor::visit ( shptr< const ast::Program program)
virtual

Iterates twices over all ClassDeclarations of the visited Program. The first run is done with a ProtoClassVisitor, that captures all types, fields and method declarations. The second run is done with a ClassVisitor to inspect the method bodies.

Parameters
programthe visted Program
See also
ProtoClassVisitor
ClassVisitor

Reimplemented from ast::ASTVisitor.


The documentation for this class was generated from the following files: