4#ifndef ASTREVERSEPROCESSING_H 
    5#define ASTREVERSEPROCESSING_H 
   11#include "AstProcessing.h" 
   17template<
typename InheritedAttributeType>
 
   22  virtual void setNodeSuccessors(
SgNode* node, 
typename AstReversePrefixInhProcessing<InheritedAttributeType>::SuccessorsContainer& succContainer);
 
 
   25template<
class SynthesizedAttributeType>
 
   30  virtual void setNodeSuccessors(
SgNode* node, 
typename AstReversePrefixSynProcessing<SynthesizedAttributeType>::SuccessorsContainer & succContainer);
 
 
   33template<
class InheritedAttributeType, 
class SynthesizedAttributeType>
 
   38  virtual void setNodeSuccessors(
SgNode* node, 
typename AstReversePrefixInhSynProcessing<InheritedAttributeType,SynthesizedAttributeType>::SuccessorsContainer & succContainer);
 
 
   45template<
class InheritedAttributeType, 
class SynthesizedAttributeType>
 
   50  virtual void setNodeSuccessors(
SgNode* node, 
typename AstReverseBranchInhSynProcessing<InheritedAttributeType,SynthesizedAttributeType>::SuccessorsContainer & succContainer);
 
 
   53template<
class InheritedAttributeType>
 
   58  virtual void setNodeSuccessors(
SgNode* node, 
typename AstReverseBranchInhProcessing<InheritedAttributeType>::SuccessorsContainer & succContainer);
 
 
   61template<
class SynthesizedAttributeType>
 
   66  virtual void setNodeSuccessors(
SgNode* node, 
typename AstReverseBranchSynProcessing<SynthesizedAttributeType>::SuccessorsContainer & succContainer);
 
 
   83template<
class InheritedAttributeType>
 
   89template<
class InheritedAttributeType>
 
   92::setNodeSuccessors(
SgNode* node, 
typename AstReversePrefixInhProcessing<InheritedAttributeType>::SuccessorsContainer& succContainer) {
 
   93  AstSuccessorsSelectors::selectReversePrefixSuccessors(node,succContainer);
 
   97template<
class SynthesizedAttributeType>
 
  103template<
class SynthesizedAttributeType>
 
  106::setNodeSuccessors(
SgNode* node, 
typename AstReversePrefixSynProcessing<SynthesizedAttributeType>::SuccessorsContainer& succContainer) {
 
  107  AstSuccessorsSelectors::selectReversePrefixSuccessors(node,succContainer);
 
  111template<
class InheritedAttributeType, 
class SynthesizedAttributeType>
 
  117template<
class InheritedAttributeType, 
class SynthesizedAttributeType>
 
  120::setNodeSuccessors(
SgNode* node, 
typename AstReversePrefixInhSynProcessing<InheritedAttributeType, SynthesizedAttributeType>::SuccessorsContainer& succContainer) {
 
  121  AstSuccessorsSelectors::selectReversePrefixSuccessors(node,succContainer);
 
  129template<
class InheritedAttributeType, 
class SynthesizedAttributeType>
 
  135template<
class InheritedAttributeType, 
class SynthesizedAttributeType>
 
  138::setNodeSuccessors(
SgNode* node, 
typename AstReverseBranchInhSynProcessing<InheritedAttributeType, SynthesizedAttributeType>::SuccessorsContainer& succContainer) {
 
  139  AstSuccessorsSelectors::selectReverseBranchSuccessors(node,succContainer);
 
  143template<
class InheritedAttributeType>
 
  149template<
class InheritedAttributeType>
 
  152::setNodeSuccessors(
SgNode* node, 
typename AstReverseBranchInhProcessing<InheritedAttributeType>::SuccessorsContainer& succContainer) {
 
  153  AstSuccessorsSelectors::selectReverseBranchSuccessors(node,succContainer);
 
  157template<
class SynthesizedAttributeType>
 
  163template<
class SynthesizedAttributeType>
 
  166::setNodeSuccessors(
SgNode* node, 
typename AstReverseBranchSynProcessing<SynthesizedAttributeType>::SuccessorsContainer& succContainer) {
 
  167  AstSuccessorsSelectors::selectReverseBranchSuccessors(node,succContainer);
 
  170#include "AstReverseSimpleProcessing.h" 
Attribute Evaluator for synthesized attributes.
 
Attribute Evaluator for inherited and synthesized attributes.
 
Attribute Evaluator for inherited attributes.
 
This class represents the base class for all IR nodes within Sage III.