Класс IOOverrides
Средства для переопределения различных API dart:io с помощью имитирующих реализаций.
Этот абстрактный базовый класс следует расширить, переопределив операции, необходимые для создания имитаций. Реализации в этом базовом классе по умолчанию используют фактическую реализацию dart:io. Например:
class MyDirectory implements Directory {
...
// An implementation of the Directory interface
...
}
void main() {
IOOverrides.runZoned(() {
...
// Operations will use MyDirectory instead of dart:io's Directory
// implementation whenever Directory is used.
...
}, createDirectory: (String path) => new MyDirectory(path));
} Конструкторы
- IOOverrides()
Свойства
- hashCode → int только для чтения, унаследовано
- Хеш-код этого объекта.
- runtimeType → Type только для чтения, унаследовано
- Представление типа объекта во время выполнения.
- stderr → Stdout только для чтения
- Стандартный поток вывода ошибок, записываемых этой программой.
- stdin → Stdin только для чтения
- Стандартный поток ввода данных, считываемых этой программой.
- stdout → Stdout только для чтения
- Стандартный поток вывода данных, записываемых этой программой.
Методы
- createDirectory(
String path) → Directory - Создает новый объект Directory для указанного
path. - createFile(
String path) → File - Создает новый объект File для указанного
path. - createLink(
String path) → Link - Возвращает новый объект Link для указанного
path. - fseGetType(
String path, bool followLinks) → Future< FileSystemEntityType> - Асинхронно возвращает
FileSystemEntityTypeдляpath. - fseGetTypeSync(
String path, bool followLinks) → FileSystemEntityType - Возвращает FileSystemEntityType для
path. - fseIdentical(
String path1, String path2) → Future< bool> - Асинхронно возвращает
true, еслиpath1иpath2являются путями к одному и тому же объекту файловой системы. - fseIdenticalSync(
String path1, String path2) → bool - Возвращает
true, еслиpath1иpath2являются путями к одному и тому же объекту файловой системы. - fsWatch(
String path, int events, bool recursive) → Stream< FileSystemEvent> - Возвращает поток Stream событий
FileSystemEvent. - fsWatchIsSupported(
) → bool - Возвращает
true, если поддерживается FileSystemEntity.watch. - getCurrentDirectory(
) → Directory - Возвращает текущий рабочий каталог.
- getSystemTempDirectory(
) → Directory - Возвращает временный каталог системы.
- noSuchMethod(
Invocation invocation) → dynamic унаследовано - Вызывается при обращении к несуществующему методу или свойству.
- serverSocketBind(
dynamic address, int port, {int backlog = 0, bool v6Only = false, bool shared = false}) → Future< ServerSocket> - Асинхронно возвращает
ServerSocket, которое при успешном выполнении подключается к указанным адресу и порту. - setCurrentDirectory(
String path) → void - Устанавливает текущий рабочий каталог в
path. - socketConnect(
dynamic host, int port, {dynamic sourceAddress, int sourcePort = 0, Duration? timeout}) → Future< Socket> - Асинхронно возвращает
Socket, подключенный к указанным узлу и порту. - socketStartConnect(
dynamic host, int port, {dynamic sourceAddress, int sourcePort = 0}) → Future< ConnectionTask< Socket>> - Асинхронно возвращает
ConnectionTask, которое при успешном выполнении подключается к указанным узлу и порту. - stat(
String path) → Future< FileStat> - Асинхронно возвращает сведения
FileStatдляpath. - statSync(
String path) → FileStat - Возвращает сведения FileStat для
path. - toString(
) → String унаследовано - Строковое представление этого объекта.
Операторы
- operator ==(
Object other) → bool унаследовано - Оператор равенства.
Статические свойства
- current → IOOverrides? только для чтения
- global ← IOOverrides? только для записи
- Объект IOOverrides, используемый в корневой зоне Zone.
Статические методы
- runWithIOOverrides<
R>( R body(), IOOverrides overrides) → R - Запускает
bodyв новой зоне Zone, используя переопределения, найденные вoverrides. - runZoned<
R>( R body(), {Directory createDirectory(String)?, Directory getCurrentDirectory()?, void setCurrentDirectory(String)?, Directory getSystemTempDirectory()?, File createFile(String)?, Future< FileStat> stat(String)?, FileStat statSync(String)?, Future< bool> fseIdentical(String, String)?, bool fseIdenticalSync(String, String)?, Future< FileSystemEntityType> fseGetType(String, bool)?, FileSystemEntityType fseGetTypeSync(String, bool)?, Stream< FileSystemEvent> fsWatch(String, int, bool)?, bool fsWatchIsSupported()?, Link createLink(String)?, Future< Socket> socketConnect(dynamic, int, {dynamic sourceAddress, int sourcePort, Duration? timeout})?, Future< ConnectionTask< Socket>> socketStartConnect(dynamic, int, {dynamic sourceAddress, int sourcePort})?, Future< ServerSocket> serverSocketBind(dynamic, int, {int backlog, bool shared, bool v6Only})?, Stdin stdin()?, Stdout stdout()?, Stdout stderr()?}) → R - Запускает
bodyв новой зоне Zone, используя предоставленные переопределения.
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-io/IOOverrides-class.html