Класс 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> - Возвращает поток
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в новой зоне с использованием переопределений, найденных в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в новой зоне с использованием предоставленных переопределений.
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-io/IOOverrides-class.html