15#ifndef LLVM_CLANG_AST_INTERP_FUNCTION_H
16#define LLVM_CLANG_AST_INTERP_FUNCTION_H
23#include "llvm/ADT/PointerUnion.h"
24#include "llvm/Support/raw_ostream.h"
50 llvm::iterator_range<LocalVectorTy::const_iterator>
locals()
const {
51 return llvm::make_range(Descriptors.begin(), Descriptors.end());
60 llvm::PointerUnion<const FunctionDecl *, const BlockExpr *>;
97 return dyn_cast<const FunctionDecl *>(Source);
100 return dyn_cast<const BlockExpr *>(Source);
121 llvm::iterator_range<llvm::SmallVector<Scope, 2>::const_iterator>
123 return llvm::make_range(Scopes.begin(), Scopes.end());
130 return llvm::reverse(ParamTypes);