浏览代码

Pointer access added.

main
offa 7 年前
父节点
当前提交
105766eff4
共有 2 个文件被更改,包括 14 次插入1 次删除
  1. +7
    -0
      include/unique_resource.h
  2. +7
    -1
      test/UniqueResourceTest.cpp

+ 7
- 0
include/unique_resource.h 查看文件

return m_resource; return m_resource;
} }


template<class RR = R,
std::enable_if_t<std::is_pointer<RR>::value, int> = 0>
std::add_lvalue_reference_t<std::remove_pointer_t<RR>> operator*() const noexcept
{
return *get();
}

const D& get_deleter() const noexcept const D& get_deleter() const noexcept
{ {
return m_deleter; return m_deleter;

+ 7
- 1
test/UniqueResourceTest.cpp 查看文件

REQUIRE(guard->first == 3); REQUIRE(guard->first == 3);
REQUIRE(guard->second == 4); REQUIRE(guard->second == 4);
} }
// TODO: Pointer access functions

TEST_CASE("pointer dereference resturns resource" "[UniqueResource]")
{
Handle h{5};
auto guard = sr::make_unique_resource(PtrHandle{&h}, [](auto*) { });
REQUIRE(*guard == 5);
}


TEST_CASE("deleter access", "[UniqueResource]") TEST_CASE("deleter access", "[UniqueResource]")
{ {

正在加载...
取消
保存