Lines Matching refs:OpaquePtr
22 // OpaquePtr
39 /// OpaquePtr - This is a very simple POD type that wraps a pointer that the
44 class OpaquePtr {
46 explicit OpaquePtr(void *Ptr) : Ptr(Ptr) {}
51 OpaquePtr() : Ptr(0) {}
53 static OpaquePtr make(PtrTy P) { OpaquePtr OP; OP.set(P); return OP; }
74 static OpaquePtr getFromOpaquePtr(void *P) { return OpaquePtr(P); }
77 /// UnionOpaquePtr - A version of OpaquePtr suitable for membership
82 static UnionOpaquePtr make(OpaquePtr<T> P) {
87 OpaquePtr<T> get() const { return OpaquePtr<T>::getFromOpaquePtr(Ptr); }
88 operator OpaquePtr<T>() const { return get(); }
90 UnionOpaquePtr &operator=(OpaquePtr<T> P) {
99 class PointerLikeTypeTraits<clang::OpaquePtr<T> > {
101 static inline void *getAsVoidPointer(clang::OpaquePtr<T> P) {
105 static inline clang::OpaquePtr<T> getFromVoidPointer(void *P) {
106 return clang::OpaquePtr<T>::getFromOpaquePtr(P);
112 struct isPodLike<clang::OpaquePtr<T> > { static const bool value = true; };
389 typedef OpaquePtr<QualType> ParsedType;
439 typedef OpaquePtr<TemplateName> ParsedTemplateTy;