#define _ASYNCIO_SYSTEM_TOOLS_HPP_
#include <string>
+#include <sys/types.h>
namespace AsyncIo
operator bool() const { return m_is_valid; }
+ mode_t mode() const { return m_mode; }
+
bool is_regular_file() const { return m_is_regular_file; }
bool is_directory() const { return m_is_directory; }
bool is_character_device() const { return m_is_character_device; }
bool m_is_valid;
- bool m_is_regular_file;
- bool m_is_directory;
- bool m_is_character_device;
- bool m_is_block_device;
- bool m_is_fifo;
- bool m_is_symbolic_link;
- bool m_is_socket;
+ mode_t m_mode;
+
+ bool m_is_regular_file :1;
+ bool m_is_directory :1;
+ bool m_is_character_device :1;
+ bool m_is_block_device :1;
+ bool m_is_fifo :1;
+ bool m_is_symbolic_link :1;
+ bool m_is_socket :1;
}; // end of FileStat