load<T> method
path's JSON, decoded and handed to parse.
Implementation
Future<T> load<T>(String path, T Function(Object? json) parse) async {
final String text;
try {
text = await _loadString(path);
} catch (e) {
developer.log(
'Failed to load $path: $e',
name: 'SettingsLoader',
error: e,
);
rethrow;
}
try {
return parse(json.decode(text));
} catch (e) {
developer.log(
'Failed to parse $path: $e',
name: 'SettingsLoader',
error: e,
);
rethrow;
}
}