parse static method

ParallelSettings parse(
  1. dynamic raw,
  2. String path
)

Implementation

static ParallelSettings parse(dynamic raw, String path) {
  if (raw == null) return const ParallelSettings();
  if (raw is bool) {
    return ParallelSettings(tasks: raw ? autoTaskCount : 1);
  }
  if (raw is Map) {
    final map = Map<String, dynamic>.from(raw);
    final rawTasks = map['tasks'] ?? 1;
    final tasks = _parseTasks(rawTasks, path);
    final gap = map['gap'] == null
        ? Duration.zero
        : parseDuration(map['gap'], label: 'parallel.gap');
    return ParallelSettings(tasks: tasks, gap: gap);
  }
  return ParallelSettings(tasks: _parseTasks(raw, path));
}