getByName<T extends Object?> static method

T? getByName<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
    )?,
})

Loads an entire section of data and applies an optional parser.

Implementation

static T? getByName<T extends Object?>(
  String name, {
  T? defaultValue,
  EnvironmentType? environment,
  PlatformType? platform,
  T? Function(Object?)? parser,
  T? Function(T)? modifier,
}) {
  if (name.isEmpty) return null;
  try {
    final raw = i._find(name, 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;
  }
}