├── .clang-format ├── .gitattributes ├── .github └── workflows │ ├── cmake.yml │ └── doc.yml ├── .gitignore ├── CMakeLists.txt ├── LICENSE ├── README.md ├── cmake ├── Findoup.cmake └── oup-config.cmake.in ├── codecov.yml ├── doc └── dox.conf ├── include └── oup │ └── observable_unique_ptr.hpp ├── oup.sublime-project └── tests ├── CMakeLists.txt ├── compile_test_copy_assign.cpp ├── compile_test_copy_const.cpp ├── compile_test_good.cpp ├── compile_test_implicit_const_base_to_derived1.cpp ├── compile_test_implicit_const_base_to_derived2.cpp ├── compile_test_implicit_const_base_to_derived3.cpp ├── compile_test_observer_assign_raw.cpp ├── compile_test_observer_construct_raw.cpp ├── compile_test_sealed_assign_raw.cpp ├── compile_test_sealed_construct_raw.cpp ├── compile_test_sealed_release.cpp ├── compile_test_sealed_reset.cpp ├── memory_tracker.cpp ├── memory_tracker.hpp ├── runtime_tests_lifetime.cpp ├── runtime_tests_make_observable.cpp ├── runtime_tests_observer_assignment_copy.cpp ├── runtime_tests_observer_assignment_from_owner.cpp ├── runtime_tests_observer_assignment_move.cpp ├── runtime_tests_observer_cast_copy.cpp ├── runtime_tests_observer_cast_move.cpp ├── runtime_tests_observer_comparison.cpp ├── runtime_tests_observer_construction.cpp ├── runtime_tests_observer_construction_copy.cpp ├── runtime_tests_observer_construction_from_owner.cpp ├── runtime_tests_observer_construction_move.cpp ├── runtime_tests_observer_from_this.cpp ├── runtime_tests_observer_misc.cpp ├── runtime_tests_owner_assignment_move.cpp ├── runtime_tests_owner_cast_move.cpp ├── runtime_tests_owner_comparison.cpp ├── runtime_tests_owner_construction.cpp ├── runtime_tests_owner_misc.cpp ├── size_benchmark.cpp ├── speed_benchmark.cpp ├── speed_benchmark_common.hpp ├── speed_benchmark_utility.cpp ├── speed_benchmark_utility2.cpp ├── testing.hpp ├── tests_common.cpp └── tests_common.hpp /.clang-format: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/.clang-format -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | 3 | *.bat eol=crlf 4 | -------------------------------------------------------------------------------- /.github/workflows/cmake.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/.github/workflows/cmake.yml -------------------------------------------------------------------------------- /.github/workflows/doc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/.github/workflows/doc.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/.gitignore -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/README.md -------------------------------------------------------------------------------- /cmake/Findoup.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/cmake/Findoup.cmake -------------------------------------------------------------------------------- /cmake/oup-config.cmake.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/cmake/oup-config.cmake.in -------------------------------------------------------------------------------- /codecov.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/codecov.yml -------------------------------------------------------------------------------- /doc/dox.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/doc/dox.conf -------------------------------------------------------------------------------- /include/oup/observable_unique_ptr.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/include/oup/observable_unique_ptr.hpp -------------------------------------------------------------------------------- /oup.sublime-project: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/oup.sublime-project -------------------------------------------------------------------------------- /tests/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/CMakeLists.txt -------------------------------------------------------------------------------- /tests/compile_test_copy_assign.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/compile_test_copy_assign.cpp -------------------------------------------------------------------------------- /tests/compile_test_copy_const.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/compile_test_copy_const.cpp -------------------------------------------------------------------------------- /tests/compile_test_good.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/compile_test_good.cpp -------------------------------------------------------------------------------- /tests/compile_test_implicit_const_base_to_derived1.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/compile_test_implicit_const_base_to_derived1.cpp -------------------------------------------------------------------------------- /tests/compile_test_implicit_const_base_to_derived2.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/compile_test_implicit_const_base_to_derived2.cpp -------------------------------------------------------------------------------- /tests/compile_test_implicit_const_base_to_derived3.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/compile_test_implicit_const_base_to_derived3.cpp -------------------------------------------------------------------------------- /tests/compile_test_observer_assign_raw.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/compile_test_observer_assign_raw.cpp -------------------------------------------------------------------------------- /tests/compile_test_observer_construct_raw.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/compile_test_observer_construct_raw.cpp -------------------------------------------------------------------------------- /tests/compile_test_sealed_assign_raw.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/compile_test_sealed_assign_raw.cpp -------------------------------------------------------------------------------- /tests/compile_test_sealed_construct_raw.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/compile_test_sealed_construct_raw.cpp -------------------------------------------------------------------------------- /tests/compile_test_sealed_release.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/compile_test_sealed_release.cpp -------------------------------------------------------------------------------- /tests/compile_test_sealed_reset.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/compile_test_sealed_reset.cpp -------------------------------------------------------------------------------- /tests/memory_tracker.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/memory_tracker.cpp -------------------------------------------------------------------------------- /tests/memory_tracker.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/memory_tracker.hpp -------------------------------------------------------------------------------- /tests/runtime_tests_lifetime.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_lifetime.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_make_observable.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_make_observable.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_observer_assignment_copy.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_observer_assignment_copy.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_observer_assignment_from_owner.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_observer_assignment_from_owner.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_observer_assignment_move.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_observer_assignment_move.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_observer_cast_copy.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_observer_cast_copy.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_observer_cast_move.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_observer_cast_move.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_observer_comparison.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_observer_comparison.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_observer_construction.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_observer_construction.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_observer_construction_copy.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_observer_construction_copy.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_observer_construction_from_owner.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_observer_construction_from_owner.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_observer_construction_move.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_observer_construction_move.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_observer_from_this.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_observer_from_this.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_observer_misc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_observer_misc.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_owner_assignment_move.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_owner_assignment_move.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_owner_cast_move.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_owner_cast_move.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_owner_comparison.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_owner_comparison.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_owner_construction.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_owner_construction.cpp -------------------------------------------------------------------------------- /tests/runtime_tests_owner_misc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/runtime_tests_owner_misc.cpp -------------------------------------------------------------------------------- /tests/size_benchmark.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/size_benchmark.cpp -------------------------------------------------------------------------------- /tests/speed_benchmark.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/speed_benchmark.cpp -------------------------------------------------------------------------------- /tests/speed_benchmark_common.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/speed_benchmark_common.hpp -------------------------------------------------------------------------------- /tests/speed_benchmark_utility.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/speed_benchmark_utility.cpp -------------------------------------------------------------------------------- /tests/speed_benchmark_utility2.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/speed_benchmark_utility2.cpp -------------------------------------------------------------------------------- /tests/testing.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/testing.hpp -------------------------------------------------------------------------------- /tests/tests_common.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/tests_common.cpp -------------------------------------------------------------------------------- /tests/tests_common.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cschreib/observable_unique_ptr/HEAD/tests/tests_common.hpp --------------------------------------------------------------------------------