diff --git a/lib/models/exercises/exercise_api.freezed.dart b/lib/models/exercises/exercise_api.freezed.dart index 711987ac..85554ce8 100644 --- a/lib/models/exercises/exercise_api.freezed.dart +++ b/lib/models/exercises/exercise_api.freezed.dart @@ -1,6 +1,5 @@ -// dart format width=80 -// coverage:ignore-file // GENERATED CODE - DO NOT MODIFY BY HAND +// coverage:ignore-file // ignore_for_file: type=lint // ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark @@ -217,6 +216,252 @@ class _$ExerciseApiDataCopyWithImpl<$Res> implements $ExerciseApiDataCopyWith<$R } } +/// Adds pattern-matching-related methods to [ExerciseApiData]. +extension ExerciseApiDataPatterns on ExerciseApiData { + /// A variant of `map` that fallback to returning `orElse`. + /// + /// It is equivalent to doing: + /// ```dart + /// switch (sealedClass) { + /// case final Subclass value: + /// return ...; + /// case _: + /// return orElse(); + /// } + /// ``` + + @optionalTypeArgs + TResult maybeMap( + TResult Function(_ExerciseBaseData value)? $default, { + required TResult orElse(), + }) { + final _that = this; + switch (_that) { + case _ExerciseBaseData() when $default != null: + return $default(_that); + case _: + return orElse(); + } + } + + /// A `switch`-like method, using callbacks. + /// + /// Callbacks receives the raw object, upcasted. + /// It is equivalent to doing: + /// ```dart + /// switch (sealedClass) { + /// case final Subclass value: + /// return ...; + /// case final Subclass2 value: + /// return ...; + /// } + /// ``` + + @optionalTypeArgs + TResult map( + TResult Function(_ExerciseBaseData value) $default, + ) { + final _that = this; + switch (_that) { + case _ExerciseBaseData(): + return $default(_that); + } + } + + /// A variant of `map` that fallback to returning `null`. + /// + /// It is equivalent to doing: + /// ```dart + /// switch (sealedClass) { + /// case final Subclass value: + /// return ...; + /// case _: + /// return null; + /// } + /// ``` + + @optionalTypeArgs + TResult? mapOrNull( + TResult? Function(_ExerciseBaseData value)? $default, + ) { + final _that = this; + switch (_that) { + case _ExerciseBaseData() when $default != null: + return $default(_that); + case _: + return null; + } + } + + /// A variant of `when` that fallback to an `orElse` callback. + /// + /// It is equivalent to doing: + /// ```dart + /// switch (sealedClass) { + /// case Subclass(:final field): + /// return ...; + /// case _: + /// return orElse(); + /// } + /// ``` + + @optionalTypeArgs + TResult maybeWhen( + TResult Function( + int id, + String uuid, + @JsonKey(name: 'variations') int? variationId, + @JsonKey(name: 'created') DateTime created, + @JsonKey(name: 'last_update') DateTime lastUpdate, + @JsonKey(name: 'last_update_global') DateTime lastUpdateGlobal, + ExerciseCategory category, + List muscles, + @JsonKey(name: 'muscles_secondary') List musclesSecondary, + List equipment, + @JsonKey(name: 'translations', defaultValue: []) List translations, + List images, + List