Конструктор String.fromEnvironment
Строковое значение декларации окружения name.
Декларации окружения предоставляются окружающей системой, которая компилирует или запускает программу Dart. Декларации сопоставляют строковый ключ со строковым значением.
Если name не объявлена в окружении, результатом будет defaultValue.
Пример получения значения:
const String.fromEnvironment("defaultFloo", defaultValue: "no floo") Чтобы проверить, существует ли декларация, используйте bool.hasEnvironment. Пример:
const maybeDeclared = bool.hasEnvironment("maybeDeclared")
? String.fromEnvironment("maybeDeclared")
: null; Строковое значение или отсутствие значения, связанное с name, должно быть одинаковым во всех вызовах String.fromEnvironment, int.fromEnvironment, bool.fromEnvironment и bool.hasEnvironment в одной программе.
Гарантируется, что этот конструктор будет работать только при вызове как const. На некоторых платформах, имеющих доступ к параметрам компилятора во время выполнения, он может работать и при вызове без константного выражения, однако на большинстве платформ с предварительной компиляцией эта информация недоступна.
Реализация
// The .fromEnvironment() constructors are special in that we do not want
// users to call them using "new". We prohibit that by giving them bodies
// that throw, even though const constructors are not allowed to have bodies.
// Disable those static errors.
//ignore: const_constructor_with_body
//ignore: const_factory
external const factory String.fromEnvironment(String name,
{String defaultValue = ""});
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-core/String/String.fromEnvironment.html