refactor(IWYU): create {ex_getln,rbuffer,os/fileio}_defs.h (#26338)

This commit is contained in:
zeertzjq
2023-12-01 08:06:37 +08:00
committed by GitHub
parent b32b5b2711
commit 09e93d7c4d
15 changed files with 174 additions and 153 deletions

View File

@@ -1,20 +1,8 @@
#pragma once
#include <stdbool.h>
#include <stddef.h>
#include <stddef.h> // IWYU pragma: keep
#include "nvim/func_attr.h"
#include "nvim/rbuffer.h"
/// Structure used to read from/write to file
typedef struct {
int fd; ///< File descriptor.
int _error; ///< Error code for use with RBuffer callbacks or zero.
RBuffer *rv; ///< Read or write buffer.
bool wr; ///< True if file is in write mode.
bool eof; ///< True if end of file was encountered.
bool non_blocking; ///< True if EAGAIN should not restart syscalls.
} FileDescriptor;
#include "nvim/os/fileio_defs.h" // IWYU pragma: export
/// file_open() flags
typedef enum {
@@ -37,33 +25,6 @@ typedef enum {
kFileMkDir = 256,
} FileOpenFlags;
static inline bool file_eof(const FileDescriptor *fp)
REAL_FATTR_PURE REAL_FATTR_WARN_UNUSED_RESULT REAL_FATTR_NONNULL_ALL;
/// Check whether end of file was encountered
///
/// @param[in] fp File to check.
///
/// @return true if it was, false if it was not or read operation was never
/// performed.
static inline bool file_eof(const FileDescriptor *const fp)
{
return fp->eof && rbuffer_size(fp->rv) == 0;
}
static inline int file_fd(const FileDescriptor *fp)
REAL_FATTR_PURE REAL_FATTR_WARN_UNUSED_RESULT REAL_FATTR_NONNULL_ALL;
/// Return the file descriptor associated with the FileDescriptor structure
///
/// @param[in] fp File to check.
///
/// @return File descriptor.
static inline int file_fd(const FileDescriptor *const fp)
{
return fp->fd;
}
enum {
/// Read or write buffer size
///