5#ifndef RUNTIME_BIN_DIRECTORY_H_
6#define RUNTIME_BIN_DIRECTORY_H_
40 void Reset(intptr_t new_length);
42 intptr_t
length()
const {
return length_; }
51class DirectoryListing;
66 : parent_(
parent), fd_(-1), lister_(0), done_(
false), link_(nullptr) {}
74 LinkList*
link() {
return link_; }
102 if (!path_buffer_.
Add(dir_name)) {
125 bool IsEmpty()
const {
return top_ ==
nullptr; }
145 bool error()
const {
return error_; }
168 const char* dir_name,
178 virtual bool HandleFile(
const char* file_name);
179 virtual bool HandleLink(
const char* file_name);
190 intptr_t
index()
const {
return index_; }
194 bool AddFileSystemEntityToResponse(
Response response,
const char* arg);
207 const char* dir_name,
221 virtual bool HandleFile(
const char* file_name);
222 virtual bool HandleLink(
const char* file_name);
246#if defined(DART_HOST_OS_WINDOWS)
247 static ExistsResult Exists(
const wchar_t*
path);
262 static void SetSystemTemp(
const char*
path);
268 const char* new_path);
281 static char* system_temp_path_override_;
283 DISALLOW_IMPLICIT_CONSTRUCTORS(
Directory);
SkIDChangeListener::List List
void SetArray(CObjectArray *array, intptr_t length)
virtual void HandleDone()
virtual bool HandleDirectory(const char *dir_name)
virtual bool HandleLink(const char *file_name)
virtual ~AsyncDirectoryListing()
AsyncDirectoryListing(Namespace *namespc, const char *dir_name, bool recursive, bool follow_links)
virtual bool HandleFile(const char *file_name)
virtual bool HandleError()
static constexpr const char * kIOLibURL
static Dart_Handle NewString(const char *str)
static Dart_Handle GetDartType(const char *library_url, const char *class_name)
ListType Next(DirectoryListing *listing)
void set_link(LinkList *link)
DirectoryListingEntry(DirectoryListingEntry *parent)
DirectoryListingEntry * parent() const
const char * CurrentPath()
PathBuffer & path_buffer()
DirectoryListingEntry * top() const
void Push(DirectoryListingEntry *directory)
virtual bool HandleFile(const char *file_name)=0
virtual void HandleDone()
virtual bool HandleDirectory(const char *dir_name)=0
virtual bool HandleLink(const char *link_name)=0
bool follow_links() const
Namespace * namespc() const
DirectoryListing(Namespace *namespc, const char *dir_name, bool recursive, bool follow_links)
virtual bool HandleError()=0
virtual ~DirectoryListing()
static bool Create(Namespace *namespc, const char *path)
static ExistsResult Exists(Namespace *namespc, const char *path)
static char * CurrentNoScope()
static bool Rename(Namespace *namespc, const char *path, const char *new_path)
static bool Delete(Namespace *namespc, const char *path, bool recursive)
static const char * CreateTemp(Namespace *namespc, const char *path)
static const char * SystemTemp(Namespace *namespc)
static CObject * CreateSystemTempRequest(const CObjectArray &request)
const char * AsScopedString() const
wchar_t * AsStringW() const
void Reset(intptr_t new_length)
bool AddW(const wchar_t *name)
bool Add(const char *name)
virtual bool HandleFile(const char *file_name)
SyncDirectoryListing(Dart_Handle results, Namespace *namespc, const char *dir_name, bool recursive, bool follow_links)
virtual ~SyncDirectoryListing()
virtual bool HandleLink(const char *file_name)
virtual bool HandleDirectory(const char *dir_name)
virtual bool HandleError()
struct _Dart_Handle * Dart_Handle
DART_EXPORT Dart_Handle Dart_Null()
DEF_SWITCHES_START aot vmservice shared library Name of the *so containing AOT compiled Dart assets for launching the service isolate vm snapshot The VM snapshot data that will be memory mapped as read only SnapshotAssetPath must be present isolate snapshot The isolate snapshot data that will be memory mapped as read only SnapshotAssetPath must be present cache dir path