xref: /xnu-10002.61.3/tests/bounded_ptr_src/test_utils.h (revision 0f4c859e951fba394238ab619495c4e1d54d0f34)
1*0f4c859eSApple OSS Distributions #ifndef TESTS_BOUNDED_PTR_TEST_UTILS_H
2*0f4c859eSApple OSS Distributions #define TESTS_BOUNDED_PTR_TEST_UTILS_H
3*0f4c859eSApple OSS Distributions 
4*0f4c859eSApple OSS Distributions #include <cassert>
5*0f4c859eSApple OSS Distributions #include <libkern/c++/bounded_ptr.h>
6*0f4c859eSApple OSS Distributions 
7*0f4c859eSApple OSS Distributions namespace {
8*0f4c859eSApple OSS Distributions struct test_policy {
9*0f4c859eSApple OSS Distributions 	static void
traptest_policy10*0f4c859eSApple OSS Distributions 	trap(char const*)
11*0f4c859eSApple OSS Distributions 	{
12*0f4c859eSApple OSS Distributions 		assert(false);
13*0f4c859eSApple OSS Distributions 	}
14*0f4c859eSApple OSS Distributions };
15*0f4c859eSApple OSS Distributions 
16*0f4c859eSApple OSS Distributions template <typename T>
17*0f4c859eSApple OSS Distributions using test_bounded_ptr = libkern::bounded_ptr<T, test_policy>;
18*0f4c859eSApple OSS Distributions } // end anonymous namespace
19*0f4c859eSApple OSS Distributions 
20*0f4c859eSApple OSS Distributions #endif // !TESTS_BOUNDED_PTR_TEST_UTILS_H
21