Program Listing for File VarSym.hh

Program Listing for File VarSym.hh#

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

#if !defined(INC_ASTTOOLS_VARSYM_HH)
#define INC_ASTTOOLS_VARSYM_HH

#include <set>
#include "Outliner.hh"

class SgVariableSymbol;
class SgVariableDeclaration;
class SgStatement;

namespace ASTtools
{
  //  SgVariableSymbol* getFirstVarSym (SgVariableDeclaration* decl);

  ROSE_DLL_API void collectDefdVarSyms (const SgStatement* s, VarSymSet_t& syms);

  ROSE_DLL_API void collectRefdVarSyms (const SgStatement* s, VarSymSet_t& syms);

  ROSE_DLL_API
  void collectLocalVisibleVarSyms (const SgStatement* root,
                                   const SgStatement* target,
                                   VarSymSet_t& syms);

  ROSE_DLL_API std::string toString (const VarSymSet_t& syms);

  ROSE_DLL_API void collectVarRefsUsingAddress(const SgStatement* s, std::set<SgVarRefExp* >& varSetB);

  ROSE_DLL_API void collectVarRefsOfTypeWithoutAssignmentSupport(const SgStatement* s, std::set<SgVarRefExp* >& varSetB);

  ROSE_DLL_API void collectPointerDereferencingVarSyms(const SgStatement*s, VarSymSet_t& pdSyms);

} // namespace ASTtools

#endif // !defined(INC_ASTTOOLS_VARSYM_HH)

// eof