String.fromEnvironment constructor Null safety

const String.fromEnvironment(
  1. String name,
  2. {String defaultValue: ""}
)

Returns the string value of the environment declaration name.

Environment declarations are provided by the surrounding system compiling or running the Dart program. Declarations map a string key to a string value.

If name is not declared in the environment, the result is instead defaultValue.

Example of getting a value:

const String.fromEnvironment("defaultFloo", defaultValue: "no floo")

In order to check whether a declaration is there at all, use bool.hasEnvironment. Example:

const maybeDeclared = bool.hasEnvironment("maybeDeclared")
    ? String.fromEnvironment("maybeDeclared")
    : null;

Implementation

// 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 = ""});