Program Listing for File IfDirectiveContextFinder.hh

Program Listing for File IfDirectiveContextFinder.hh#

Return to documentation for file (src/midend/programTransformation/astOutlining/IfDirectiveContextFinder.hh)

#if !defined(INC_CPREPROC_IFDIRECTIVECONTEXTFINDER_HH)
#define INC_CPREPROC_IFDIRECTIVECONTEXTFINDER_HH

#include <IfDirectiveExtractor.hh>

namespace CPreproc
{
  class IfDirectiveContextFinder : public IfDirectiveExtractor
  {
  public:
    IfDirectiveContextFinder (CPreproc::Ifs_t& ifs,
                              const SgLocatedNode* target);
    virtual void visitTopDown (SgNode* n);
    virtual void visitBottomUp (SgNode* n);


    If::Case* getContextTop (void);
    const If::Case* getContextTop (void) const;
    If::Case* getContextBottom (void);
    const If::Case* getContextBottom (void) const;

  private:
    const SgLocatedNode* target_;

    If::Case* top_;

    If::Case* bottom_;
  }; // class IfDirectiveContextFinder
} // namespace CPreproc

#endif // !defined(INC_CPREPROC_IFDIRECTIVECONTEXTFINDER_HH)

// eof