Lines Matching refs:File
1 //===--- Implementation of the Linux specialization of File ---------------===//
14 #include "src/__support/File/file.h"
15 #include "src/__support/File/linux/lseekImpl.h"
27 FileIOResult linux_file_write(File *f, const void *data, size_t size) {
37 FileIOResult linux_file_read(File *f, void *buf, size_t size) {
47 ErrorOr<off_t> linux_file_seek(File *f, off_t offset, int whence) {
55 int linux_file_close(File *f) {
65 ErrorOr<File *> openfile(const char *path, const char *mode) {
66 using ModeFlags = File::ModeFlags;
67 auto modeflags = File::mode_flags(mode);
73 if (modeflags & ModeFlags(File::OpenMode::APPEND)) {
75 if (modeflags & ModeFlags(File::OpenMode::PLUS))
79 } else if (modeflags & ModeFlags(File::OpenMode::WRITE)) {
81 if (modeflags & ModeFlags(File::OpenMode::PLUS))
86 if (modeflags & ModeFlags(File::OpenMode::PLUS))
92 // File created will have 0666 permissions.
112 buffer = new (ac) uint8_t[File::DEFAULT_BUFFER_SIZE];
118 LinuxFile(fd, buffer, File::DEFAULT_BUFFER_SIZE, _IOFBF, true, modeflags);
125 using ModeFlags = File::ModeFlags;
126 ModeFlags modeflags = File::mode_flags(mode);
136 using OpenMode = File::OpenMode;
157 buffer = new (ac) uint8_t[File::DEFAULT_BUFFER_SIZE];
164 LinuxFile(fd, buffer, File::DEFAULT_BUFFER_SIZE, _IOFBF, true, modeflags);
178 int get_fileno(File *f) {