![]() |
Flutter Engine
The Flutter Engine
|
#include <file.h>
Public Types | |
enum | FileOpenMode { kRead = 0 , kWrite = 1 , kTruncate = 1 << 2 , kWriteOnly = 1 << 3 , kWriteTruncate = kWrite | kTruncate , kWriteOnlyTruncate = kWriteOnly | kTruncate } |
enum | DartFileOpenMode { kDartRead = 0 , kDartWrite = 1 , kDartAppend = 2 , kDartWriteOnly = 3 , kDartWriteOnlyAppend = 4 } |
enum | Type { kIsFile = 0 , kIsDirectory = 1 , kIsLink = 2 , kIsSock = 3 , kIsPipe = 4 , kDoesNotExist = 5 } |
enum | Identical { kIdentical = 0 , kDifferent = 1 , kError = 2 } |
enum | StdioHandleType { kTerminal = 0 , kPipe = 1 , kFile = 2 , kSocket = 3 , kOther = 4 , kTypeError = 5 } |
enum | FileStat { kType = 0 , kCreatedTime = 1 , kModifiedTime = 2 , kAccessedTime = 3 , kMode = 4 , kSize = 5 , kStatSize = 6 } |
enum | LockType { kLockMin = 0 , kLockUnlock = 0 , kLockShared = 1 , kLockExclusive = 2 , kLockBlockingShared = 3 , kLockBlockingExclusive = 4 , kLockMax = 4 } |
enum | MapType { kReadOnly = 0 , kReadExecute = 1 , kReadWrite = 2 } |
Public Member Functions | |
intptr_t | GetFD () |
MappedMemory * | Map (MapType type, int64_t position, int64_t length, void *start=nullptr) |
int64_t | Read (void *buffer, int64_t num_bytes) |
int64_t | Write (const void *buffer, int64_t num_bytes) |
bool | ReadFully (void *buffer, int64_t num_bytes) |
bool | WriteFully (const void *buffer, int64_t num_bytes) |
bool | WriteByte (uint8_t byte) |
bool | Print (const char *format,...) PRINTF_ATTRIBUTE(2 |
bool | va_start (args, format) |
va_end (args) | |
bool | VPrint (const char *format, va_list args) |
int64_t | Length () |
int64_t | Position () |
bool | SetPosition (int64_t position) |
bool | Truncate (int64_t length) |
bool | Flush () |
bool | Lock (LockType lock, int64_t start, int64_t end) |
bool | IsClosed () |
void | Close () |
Dart_FinalizableHandle | FinalizableHandle () const |
void | SetFinalizableHandle (Dart_FinalizableHandle handle) |
void | DeleteFinalizableHandle (Dart_Isolate isolate, Dart_Handle strong_ref) |
![]() | |
ReferenceCounted () | |
virtual | ~ReferenceCounted () |
void | Retain () |
void | Release () |
Static Public Member Functions | |
static File * | Open (Namespace *namespc, const char *path, FileOpenMode mode) |
static File * | OpenUri (Namespace *namespc, const char *uri, FileOpenMode mode) |
static CStringUniquePtr | UriToPath (const char *uri) |
static File * | OpenStdio (int fd) |
static File * | OpenFD (int fd) |
static bool | Exists (Namespace *namespc, const char *path) |
static bool | ExistsUri (Namespace *namespc, const char *uri) |
static bool | Create (Namespace *namespc, const char *path, bool exclusive) |
static bool | CreateLink (Namespace *namespc, const char *path, const char *target) |
static bool | CreatePipe (Namespace *namespc, File **readPipe, File **writePipe) |
static bool | Delete (Namespace *namespc, const char *path) |
static bool | DeleteLink (Namespace *namespc, const char *path) |
static bool | Rename (Namespace *namespc, const char *old_path, const char *new_path) |
static bool | RenameLink (Namespace *namespc, const char *old_path, const char *new_path) |
static bool | Copy (Namespace *namespc, const char *old_path, const char *new_path) |
static int64_t | LengthFromPath (Namespace *namespc, const char *path) |
static void | Stat (Namespace *namespc, const char *path, int64_t *data) |
static time_t | LastModified (Namespace *namespc, const char *path) |
static bool | SetLastModified (Namespace *namespc, const char *path, int64_t millis) |
static time_t | LastAccessed (Namespace *namespc, const char *path) |
static bool | SetLastAccessed (Namespace *namespc, const char *path, int64_t millis) |
static bool | IsAbsolutePath (const char *path) |
static const char * | PathSeparator () |
static const char * | StringEscapedPathSeparator () |
static Type | GetType (Namespace *namespc, const char *path, bool follow_links) |
static Identical | AreIdentical (Namespace *namespc_1, const char *file_1, Namespace *namespc_2, const char *file_2) |
static StdioHandleType | GetStdioHandleType (int fd) |
static const char * | LinkTarget (Namespace *namespc, const char *pathname, char *dest=nullptr, int dest_size=0) |
static const char * | GetCanonicalPath (Namespace *namespc, const char *path, char *dest=nullptr, int dest_size=0) |
static const char * | ReadLink (const char *pathname) |
static intptr_t | ReadLinkInto (const char *pathname, char *result, size_t result_size) |
static intptr_t | CleanUnixPath (const char *in, char *out, intptr_t outlen) |
static FileOpenMode | DartModeToFileMode (DartFileOpenMode mode) |
static CObject * | ExistsRequest (const CObjectArray &request) |
static CObject * | CreateRequest (const CObjectArray &request) |
static CObject * | CreatePipeRequest (const CObjectArray &request) |
static CObject * | DeleteRequest (const CObjectArray &request) |
static CObject * | RenameRequest (const CObjectArray &request) |
static CObject * | CopyRequest (const CObjectArray &request) |
static CObject * | OpenRequest (const CObjectArray &request) |
static CObject * | ResolveSymbolicLinksRequest (const CObjectArray &request) |
static CObject * | CloseRequest (const CObjectArray &request) |
static CObject * | PositionRequest (const CObjectArray &request) |
static CObject * | SetPositionRequest (const CObjectArray &request) |
static CObject * | TruncateRequest (const CObjectArray &request) |
static CObject * | LengthRequest (const CObjectArray &request) |
static CObject * | LengthFromPathRequest (const CObjectArray &request) |
static CObject * | LastModifiedRequest (const CObjectArray &request) |
static CObject * | SetLastModifiedRequest (const CObjectArray &request) |
static CObject * | LastAccessedRequest (const CObjectArray &request) |
static CObject * | SetLastAccessedRequest (const CObjectArray &request) |
static CObject * | FlushRequest (const CObjectArray &request) |
static CObject * | ReadByteRequest (const CObjectArray &request) |
static CObject * | WriteByteRequest (const CObjectArray &request) |
static CObject * | ReadRequest (const CObjectArray &request) |
static CObject * | ReadIntoRequest (const CObjectArray &request) |
static CObject * | WriteFromRequest (const CObjectArray &request) |
static CObject * | CreateLinkRequest (const CObjectArray &request) |
static CObject * | DeleteLinkRequest (const CObjectArray &request) |
static CObject * | RenameLinkRequest (const CObjectArray &request) |
static CObject * | LinkTargetRequest (const CObjectArray &request) |
static CObject * | TypeRequest (const CObjectArray &request) |
static CObject * | IdenticalRequest (const CObjectArray &request) |
static CObject * | StatRequest (const CObjectArray &request) |
static CObject * | LockRequest (const CObjectArray &request) |
Public Attributes | |
bool | result = VPrint(format, args) |
return | result |
Friends | |
class | ReferenceCounted< File > |
Enumerator | |
---|---|
kDartRead | |
kDartWrite | |
kDartAppend | |
kDartWriteOnly | |
kDartWriteOnlyAppend |
Definition at line 67 of file file.h.
Enumerator | |
---|---|
kType | |
kCreatedTime | |
kModifiedTime | |
kAccessedTime | |
kMode | |
kSize | |
kStatSize |
Definition at line 96 of file file.h.
Enumerator | |
---|---|
kLockMin | |
kLockUnlock | |
kLockShared | |
kLockExclusive | |
kLockBlockingShared | |
kLockBlockingExclusive | |
kLockMax |
Definition at line 107 of file file.h.
Enumerator | |
---|---|
kReadOnly | |
kReadExecute | |
kReadWrite |
Enumerator | |
---|---|
kIsFile | |
kIsDirectory | |
kIsLink | |
kIsSock | |
kIsPipe | |
kDoesNotExist |
|
static |
|
static |
Definition at line 655 of file file.cc.
void dart::bin::File::Close | ( | ) |
|
static |
Definition at line 901 of file file.cc.
|
static |
|
static |
Definition at line 865 of file file.cc.
|
static |
|
static |
|
static |
Definition at line 1270 of file file.cc.
|
static |
|
static |
Definition at line 783 of file file.cc.
|
static |
Definition at line 765 of file file.cc.
|
static |
Definition at line 89 of file file_support.cc.
|
static |
|
inline |
Definition at line 216 of file file.h.
|
static |
|
static |
Definition at line 1288 of file file.cc.
|
static |
Definition at line 832 of file file.cc.
|
static |
|
static |
Definition at line 751 of file file.cc.
|
static |
|
inline |
bool dart::bin::File::Flush | ( | ) |
|
static |
|
static |
intptr_t dart::bin::File::GetFD | ( | ) |
|
static |
|
static |
|
static |
Definition at line 1357 of file file.cc.
|
static |
bool dart::bin::File::IsClosed | ( | ) |
|
static |
|
static |
Definition at line 1003 of file file.cc.
|
static |
|
static |
Definition at line 1040 of file file.cc.
int64_t dart::bin::File::Length | ( | ) |
|
static |
|
static |
Definition at line 985 of file file.cc.
|
static |
|
static |
|
static |
Definition at line 1322 of file file.cc.
bool dart::bin::File::Lock | ( | LockType | lock, |
int64_t | start, | ||
int64_t | end | ||
) |
|
static |
Definition at line 1401 of file file.cc.
MappedMemory * dart::bin::File::Map | ( | MapType | type, |
int64_t | position, | ||
int64_t | length, | ||
void * | start = nullptr |
||
) |
Maps or copies the file into memory.
'position' and 'length' should be page-aligned.
If 'start' is zero, allocates virtual memory for the mapping. When the returned 'MappedMemory' is destroyed, the mapping is removed.
If 'start' is non-zero, it must point within a suitably sized existing mapping. The returned 'MappedMemory' will not remove the mapping when it is destroyed; rather, the mapping will be removed when the enclosing mapping is removed. This mode is not supported on Fuchsia.
If 'type' is 'kReadWrite', writes to the mapping are not copied back to the file.
'position' + 'length' may be larger than the file size. In this case, the extra memory is zero-filled.
|
static |
|
static |
Definition at line 808 of file file.cc.
|
static |
|
static |
int64_t dart::bin::File::Position | ( | ) |
|
static |
bool dart::bin::File::Print | ( | const char * | format, |
... | |||
) |
int64_t dart::bin::File::Read | ( | void * | buffer, |
int64_t | num_bytes | ||
) |
|
static |
Definition at line 1089 of file file.cc.
bool dart::bin::File::ReadFully | ( | void * | buffer, |
int64_t | num_bytes | ||
) |
Definition at line 41 of file file_support.cc.
|
static |
Definition at line 1163 of file file.cc.
|
static |
|
static |
|
static |
Definition at line 1128 of file file.cc.
|
static |
|
static |
|
static |
Definition at line 1304 of file file.cc.
|
static |
Definition at line 847 of file file.cc.
|
static |
Definition at line 883 of file file.cc.
|
inline |
|
static |
|
static |
Definition at line 1022 of file file.cc.
|
static |
|
static |
Definition at line 1059 of file file.cc.
bool dart::bin::File::SetPosition | ( | int64_t | position | ) |
|
static |
|
static |
|
static |
Definition at line 1376 of file file.cc.
|
static |
bool dart::bin::File::Truncate | ( | int64_t | length | ) |
|
static |
|
static |
Definition at line 1340 of file file.cc.
|
static |
dart::bin::File::va_end | ( | args | ) |
bool dart::bin::File::VPrint | ( | const char * | format, |
va_list | args | ||
) |
int64_t dart::bin::File::Write | ( | const void * | buffer, |
int64_t | num_bytes | ||
) |
|
inline |
Definition at line 165 of file file.h.
|
static |
Definition at line 1109 of file file.cc.
|
static |
Definition at line 1227 of file file.cc.
bool dart::bin::File::WriteFully | ( | const void * | buffer, |
int64_t | num_bytes | ||
) |
Definition at line 55 of file file_support.cc.
|
friend |