19 #ifndef FILEACCESSOR_IMPL
20 #error "This file should not be included directly! Use FileAccessor.h instead"
26 template <
typename TFD>
28 : m_fd(std::
move(fd)), m_release_callback(release_callback) {}
30 template <
typename TFD>
31 FileReadAccessor<TFD>::FileReadAccessor(TFD&& fd, ReleaseDescriptorCallback release_callback, SharedLock lock)
32 : FileAccessor<TFD>(std::
move(fd), release_callback), m_shared_lock(std::
move(lock)) {}
34 template <
typename TFD>
35 FileReadAccessor<TFD>::~FileReadAccessor() {
36 FileAccessor<TFD>::m_release_callback(
std::move(FileAccessor<TFD>::m_fd));
39 template <
typename TFD>
40 bool FileReadAccessor<TFD>::isReadOnly()
const {
44 template <
typename TFD>
45 FileWriteAccessor<TFD>::FileWriteAccessor(TFD&& fd, ReleaseDescriptorCallback release_callback, UniqueLock lock)
46 : FileAccessor<TFD>(std::
move(fd), release_callback), m_unique_lock(std::
move(lock)) {}
48 template <
typename TFD>
49 FileWriteAccessor<TFD>::~FileWriteAccessor<TFD>() {
50 FileAccessor<TFD>::m_release_callback(
std::move(FileAccessor<TFD>::m_fd));
53 template <
typename TFD>
54 bool FileWriteAccessor<TFD>::isReadOnly()
const {
FileAccessor(TFD &&fd, ReleaseDescriptorCallback release_callback)