File indexing completed on 2026-05-10 08:36:50
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 #ifndef LLVM_CLANG_BASIC_LLVM_H
0016 #define LLVM_CLANG_BASIC_LLVM_H
0017
0018
0019
0020
0021 #include "llvm/Support/Casting.h"
0022
0023
0024 #include "llvm/ADT/SmallVector.h"
0025
0026 namespace llvm {
0027
0028 class StringRef;
0029 class Twine;
0030 class VersionTuple;
0031 template<typename T> class ArrayRef;
0032 template<typename T> class MutableArrayRef;
0033 template<typename T> class OwningArrayRef;
0034 template<unsigned InternalLen> class SmallString;
0035 template<typename T, unsigned N> class SmallVector;
0036 template<typename T> class SmallVectorImpl;
0037 template <class T> class Expected;
0038
0039 template<typename T>
0040 struct SaveAndRestore;
0041
0042
0043 template <typename T> class IntrusiveRefCntPtr;
0044 template <typename T> struct IntrusiveRefCntPtrInfo;
0045 template <class Derived> class RefCountedBase;
0046
0047 class raw_ostream;
0048 class raw_pwrite_stream;
0049
0050 }
0051
0052
0053 namespace clang {
0054
0055 using llvm::isa;
0056 using llvm::isa_and_nonnull;
0057 using llvm::isa_and_present;
0058 using llvm::cast;
0059 using llvm::dyn_cast;
0060 using llvm::dyn_cast_or_null;
0061 using llvm::dyn_cast_if_present;
0062 using llvm::cast_or_null;
0063 using llvm::cast_if_present;
0064
0065
0066 using llvm::ArrayRef;
0067 using llvm::MutableArrayRef;
0068 using llvm::OwningArrayRef;
0069 using llvm::SaveAndRestore;
0070 using llvm::SmallString;
0071 using llvm::SmallVector;
0072 using llvm::SmallVectorImpl;
0073 using llvm::StringRef;
0074 using llvm::Twine;
0075 using llvm::VersionTuple;
0076
0077
0078 using llvm::Expected;
0079
0080
0081 using llvm::IntrusiveRefCntPtr;
0082 using llvm::IntrusiveRefCntPtrInfo;
0083 using llvm::RefCountedBase;
0084
0085 using llvm::raw_ostream;
0086 using llvm::raw_pwrite_stream;
0087 }
0088
0089 #endif