load<T extends Object?> static method

T? load<T extends Object?>({
  1. String? name,
  2. T? defaultValue,
  3. EnvironmentType? environment,
  4. PlatformType? platform,
  5. T? parser(
    1. Object?
    )?,
  6. T? modifier(
    1. T
    )?,
})

Implementation

static T? load<T extends Object?>({
  String? name,
  T? defaultValue,
  EnvironmentType? environment,
  PlatformType? platform,
  T? Function(Object?)? parser,
  T? Function(T)? modifier,
}) {
  try {
    final raw = i._find(
      name ?? _kThemes,
      environment: environment,
      platform: platform,
    );
    T? value = raw?.findOrNull(builder: parser);
    if (value is! T) return defaultValue;
    if (modifier != null) value = modifier(value);
    return value;
  } catch (msg) {
    i._log(msg);
    return defaultValue;
  }
}