diff options
Diffstat (limited to 'src/platform.h')
| -rw-r--r-- | src/platform.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/platform.h b/src/platform.h new file mode 100644 index 0000000..66cdcb1 --- /dev/null +++ b/src/platform.h @@ -0,0 +1,35 @@ +#ifndef INCLUDE_PLATFORM +#define INCLUDE_PLATFORM + +#include "array.h" +#include "memory_bucket.h" +#include "search.h" +#include "../utf8.h" + +typedef struct t_file_content +{ + int content_length; + void *content; + int file_error; +} file_content; + +typedef enum t_file_open_error +{ + FILE_ERROR_TOO_MANY_OPEN_FILES_PROCESS = 1, + FILE_ERROR_TOO_MANY_OPEN_FILES_SYSTEM = 2, + FILE_ERROR_NO_ACCESS = 3, + FILE_ERROR_NOT_FOUND = 4, + FILE_ERROR_CONNECTION_ABORTED = 5, + FILE_ERROR_CONNECTION_REFUSED = 6, + FILE_ERROR_NETWORK_DOWN = 7, + FILE_ERROR_REMOTE_IO_ERROR = 8, + FILE_ERROR_STALE = 9, // NFS server file is removed/renamed + FILE_ERROR_GENERIC = 10, + FILE_ERROR_TOO_BIG = 11, +} file_open_error; + +file_content platform_read_file(char *path, const char *mode); +void platform_list_files_block(search_result* result, wchar_t* start_dir = nullptr); +void platform_list_files(search_result* result); + +#endif
\ No newline at end of file |
