aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/os/fs_defs.h
diff options
context:
space:
mode:
authorStefan Hoffmann <stefan991@gmail.com>2014-05-10 11:49:25 +0200
committerStefan Hoffmann <stefan991@gmail.com>2014-06-27 13:59:28 +0200
commit4a22fb06b98fedd0e95d2bb4529ac1d74c418ff4 (patch)
tree3ec1ef2858dd9fb17ad7103dd0b7173a0c37b205 /src/nvim/os/fs_defs.h
parent8a85b37253ccb3aa9e127a53f5a0c0ee80cd65d7 (diff)
downloadrneovim-4a22fb06b98fedd0e95d2bb4529ac1d74c418ff4.tar.gz
rneovim-4a22fb06b98fedd0e95d2bb4529ac1d74c418ff4.tar.bz2
rneovim-4a22fb06b98fedd0e95d2bb4529ac1d74c418ff4.zip
FileID: implement `FileID` struct
`FileID` should encapsulate `st_dev` and `st_ino`. It is a new abstraction used to check if two files are the same. `FileID`s will be embeded inside other struts like `buf_t` or `ff_visited_T`, where a full `FileInfo` would be to big.
Diffstat (limited to 'src/nvim/os/fs_defs.h')
-rw-r--r--src/nvim/os/fs_defs.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/nvim/os/fs_defs.h b/src/nvim/os/fs_defs.h
new file mode 100644
index 0000000000..ab4c05b965
--- /dev/null
+++ b/src/nvim/os/fs_defs.h
@@ -0,0 +1,19 @@
+#ifndef NVIM_OS_FS_DEFS_H
+#define NVIM_OS_FS_DEFS_H
+
+#include <uv.h>
+
+/// Struct which encapsulates stat information.
+typedef struct {
+ uv_stat_t stat; ///< @private
+} FileInfo;
+
+/// Struct which encapsulates inode/dev_id information.
+typedef struct {
+ uint64_t inode; ///< @private The inode of the file
+ uint64_t device_id; ///< @private The id of the device containing the file
+} FileID;
+
+#define FILE_ID_EMPTY (FileID){.inode = 0, .device_id = 0}
+
+#endif // NVIM_OS_FS_DEFS_H