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

#include <ProtoMemberVisitor.hpp>

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

Public Member Functions

 ProtoMemberVisitor (ProtoClassVisitor &classVisitor)
 
virtual void visit (shptr< const ast::MethodDeclaration > methodDeclaration)
 
virtual void visit (shptr< const ast::MainMethodDeclaration > mainMethodDecl)
 
virtual void visit (shptr< const ast::FieldDeclaration > fieldDeclaration)
 
ir_graph * getGraph () const
 
- 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< Ident 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< Program 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)
 

Protected Attributes

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

Constructor & Destructor Documentation

firm::visitor::ProtoMemberVisitor::ProtoMemberVisitor ( ProtoClassVisitor classVisitor)

Constructs a ProtoMemberVisitor from the given ProtoClassVisitor. Sets this owner to the one from the ProtoClassVisitor.

Parameters
classVisitorthe given ProtoClassVisitor

Member Function Documentation

ir_graph * firm::visitor::ProtoMemberVisitor::getGraph ( ) const

Returns the function graph.

Returns
function graph
void firm::visitor::ProtoMemberVisitor::visit ( shptr< const ast::MethodDeclaration methodDeclaration)
virtual

Creates a method entity from the visited MethodDeclaration's mangled name and the visitor's owner. This entity is saved in the FirmInterface.

Parameters
methodDeclarationthe visited MethodDeclaration
See also
FirmInterface

Reimplemented from ast::ASTVisitor.

void firm::visitor::ProtoMemberVisitor::visit ( shptr< const ast::MainMethodDeclaration mainMethodDecl)
virtual

Does nothing here.

Parameters
mainMethodDecl

Reimplemented from ast::ASTVisitor.

void firm::visitor::ProtoMemberVisitor::visit ( shptr< const ast::FieldDeclaration fieldDeclaration)
virtual

Creates a field entity from the visited FieldDeclaration using it's mangled name and calculating its offset of the class type. This entity is saved in the FirmInterface.

Parameters
fieldDeclaration[description]
See also
FirmInterface

Reimplemented from ast::ASTVisitor.

Member Data Documentation

ProtoClassVisitor& firm::visitor::ProtoMemberVisitor::classVisitor
protected

The calling ProtoClassVisitor

ir_graph* firm::visitor::ProtoMemberVisitor::function_graph
protected

The resultung function graph


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