Lines Matching defs:is
10 /// This file defines the PointerUnion class, which is a discriminated union of
32 /// This is ceil(log2(n)).
46 /// Provide PointerLikeTypeTraits for void* that is used by PointerUnion
91 // This is a forward declaration of CastInfoPointerUnionImpl
97 /// This implementation is extremely efficient in space due to leveraging the
103 /// printf("%d %d", P.is<int*>(), P.is<float*>()); // prints "1 0"
121 // The first type is special because we want to directly cast a pointer to a
129 /// This is needed to give the CastInfo implementation below access
140 /// Test if the pointer held in the union is null, regardless of
141 /// which type it is.
146 // FIXME: Replace the uses of is(), get() and dyn_cast() with
150 template <typename T> inline bool is() const { return isa<T>(*this); }
154 /// If the specified pointer type is incorrect, assert.
160 /// Returns the current pointer if it is of the specified pointer type,
166 /// If the union is set to the first pointer type get an address pointing to
172 /// If the union is set to the first pointer type get an address pointing to
175 assert(is<First>() && "Val is not the first pointer");
262 // Teach SmallPtrSet that PointerUnion is "basically a pointer", that has