46 virtual ~IFile (
void ) {}
51 virtual const std::string
extension (
const std::string& file ) = 0;
56 virtual int32
size (
const std::string& file_path ) = 0;
58 virtual bool is_dir(
const std::string& file_path ) = 0;
60 virtual bool is_file(
const std::string& file_path ) = 0;
63 virtual bool exists(
const std::string& file_path ) = 0;
68 virtual const std::string
path(
const std::string& dir_path ) = 0;
87 virtual const std::string
basename (
const std::string& filename ) = 0;
89 virtual std::vector<std::string> read_dir(
const std::string& dir_path ) = 0;
91 virtual const std::string resource_path(
const std::string& identifier =
"\0" ) = 0;
93 virtual const std::string user_documents_path(
void ) = 0;
95 virtual const std::string user_app_support_path(
void ) = 0;
97 virtual const std::string user_home_path(
void ) = 0;
98 virtual const std::string system_path(
void ) = 0;
100 virtual bool mkdir(
const std::string&
path ) = 0;
101 virtual bool recursive_mkdir(
const std::string&
path ) = 0;
102 virtual bool rmdir(
const std::string&
path ) = 0;
104 virtual bool mkfile(
const std::string&
path ) = 0;
106 virtual std::string env(
const std::string&
path ) = 0;