mirrored_repositories/Flutter-Movie-App/lib/model
// coverage:ignore-file
// GENERATED CODE - DO NOT MODIFY BY HAND
// 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

part of 'MovieDetails.dart';

// **************************************************************************
// FreezedGenerator
// **************************************************************************

T _$identity<T>(T value) => value;

final _privateConstructorUsedError = UnsupportedError(
    'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods');

MovieDetails _$MovieDetailsFromJson(Map<String, dynamic> json) {
  return _MovieDetails.fromJson(json);
}

/// @nodoc
mixin _$MovieDetails {
  bool get adult => throw _privateConstructorUsedError;
  String get backdrop_path => throw _privateConstructorUsedError;
  dynamic get belongs_to_collection => throw _privateConstructorUsedError;
  int get budget => throw _privateConstructorUsedError;
  List<Genre>? get genres => throw _privateConstructorUsedError;
  String get homepage => throw _privateConstructorUsedError;
  int get id => throw _privateConstructorUsedError;
  String get imdb_id => throw _privateConstructorUsedError;
  String get original_language => throw _privateConstructorUsedError;
  String get original_title => throw _privateConstructorUsedError;
  String get overview => throw _privateConstructorUsedError;
  double get popularity => throw _privateConstructorUsedError;
  String get poster_path => throw _privateConstructorUsedError;
  List<ProductionCompany> get production_companies =>
      throw _privateConstructorUsedError;
  List<ProductionCountry> get production_countries =>
      throw _privateConstructorUsedError;
  String get release_date => throw _privateConstructorUsedError;
  int get revenue => throw _privateConstructorUsedError;
  int get runtime => throw _privateConstructorUsedError;
  List<SpokenLanguage> get spoken_languages =>
      throw _privateConstructorUsedError;
  String get status => throw _privateConstructorUsedError;
  String get tagline => throw _privateConstructorUsedError;
  String get title => throw _privateConstructorUsedError;
  bool get video => throw _privateConstructorUsedError;
  double get vote_average => throw _privateConstructorUsedError;
  int get vote_count => throw _privateConstructorUsedError;

  Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
  @JsonKey(ignore: true)
  $MovieDetailsCopyWith<MovieDetails> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class $MovieDetailsCopyWith<$Res> {
  factory $MovieDetailsCopyWith(
          MovieDetails value, $Res Function(MovieDetails) then) =
      _$MovieDetailsCopyWithImpl<$Res>;
  $Res call(
      {bool adult,
      String backdrop_path,
      dynamic belongs_to_collection,
      int budget,
      List<Genre>? genres,
      String homepage,
      int id,
      String imdb_id,
      String original_language,
      String original_title,
      String overview,
      double popularity,
      String poster_path,
      List<ProductionCompany> production_companies,
      List<ProductionCountry> production_countries,
      String release_date,
      int revenue,
      int runtime,
      List<SpokenLanguage> spoken_languages,
      String status,
      String tagline,
      String title,
      bool video,
      double vote_average,
      int vote_count});
}

/// @nodoc
class _$MovieDetailsCopyWithImpl<$Res> implements $MovieDetailsCopyWith<$Res> {
  _$MovieDetailsCopyWithImpl(this._value, this._then);

  final MovieDetails _value;
  // ignore: unused_field
  final $Res Function(MovieDetails) _then;

  @override
  $Res call({
    Object? adult = freezed,
    Object? backdrop_path = freezed,
    Object? belongs_to_collection = freezed,
    Object? budget = freezed,
    Object? genres = freezed,
    Object? homepage = freezed,
    Object? id = freezed,
    Object? imdb_id = freezed,
    Object? original_language = freezed,
    Object? original_title = freezed,
    Object? overview = freezed,
    Object? popularity = freezed,
    Object? poster_path = freezed,
    Object? production_companies = freezed,
    Object? production_countries = freezed,
    Object? release_date = freezed,
    Object? revenue = freezed,
    Object? runtime = freezed,
    Object? spoken_languages = freezed,
    Object? status = freezed,
    Object? tagline = freezed,
    Object? title = freezed,
    Object? video = freezed,
    Object? vote_average = freezed,
    Object? vote_count = freezed,
  }) {
    return _then(_value.copyWith(
      adult: adult == freezed
          ? _value.adult
          : adult // ignore: cast_nullable_to_non_nullable
              as bool,
      backdrop_path: backdrop_path == freezed
          ? _value.backdrop_path
          : backdrop_path // ignore: cast_nullable_to_non_nullable
              as String,
      belongs_to_collection: belongs_to_collection == freezed
          ? _value.belongs_to_collection
          : belongs_to_collection // ignore: cast_nullable_to_non_nullable
              as dynamic,
      budget: budget == freezed
          ? _value.budget
          : budget // ignore: cast_nullable_to_non_nullable
              as int,
      genres: genres == freezed
          ? _value.genres
          : genres // ignore: cast_nullable_to_non_nullable
              as List<Genre>?,
      homepage: homepage == freezed
          ? _value.homepage
          : homepage // ignore: cast_nullable_to_non_nullable
              as String,
      id: id == freezed
          ? _value.id
          : id // ignore: cast_nullable_to_non_nullable
              as int,
      imdb_id: imdb_id == freezed
          ? _value.imdb_id
          : imdb_id // ignore: cast_nullable_to_non_nullable
              as String,
      original_language: original_language == freezed
          ? _value.original_language
          : original_language // ignore: cast_nullable_to_non_nullable
              as String,
      original_title: original_title == freezed
          ? _value.original_title
          : original_title // ignore: cast_nullable_to_non_nullable
              as String,
      overview: overview == freezed
          ? _value.overview
          : overview // ignore: cast_nullable_to_non_nullable
              as String,
      popularity: popularity == freezed
          ? _value.popularity
          : popularity // ignore: cast_nullable_to_non_nullable
              as double,
      poster_path: poster_path == freezed
          ? _value.poster_path
          : poster_path // ignore: cast_nullable_to_non_nullable
              as String,
      production_companies: production_companies == freezed
          ? _value.production_companies
          : production_companies // ignore: cast_nullable_to_non_nullable
              as List<ProductionCompany>,
      production_countries: production_countries == freezed
          ? _value.production_countries
          : production_countries // ignore: cast_nullable_to_non_nullable
              as List<ProductionCountry>,
      release_date: release_date == freezed
          ? _value.release_date
          : release_date // ignore: cast_nullable_to_non_nullable
              as String,
      revenue: revenue == freezed
          ? _value.revenue
          : revenue // ignore: cast_nullable_to_non_nullable
              as int,
      runtime: runtime == freezed
          ? _value.runtime
          : runtime // ignore: cast_nullable_to_non_nullable
              as int,
      spoken_languages: spoken_languages == freezed
          ? _value.spoken_languages
          : spoken_languages // ignore: cast_nullable_to_non_nullable
              as List<SpokenLanguage>,
      status: status == freezed
          ? _value.status
          : status // ignore: cast_nullable_to_non_nullable
              as String,
      tagline: tagline == freezed
          ? _value.tagline
          : tagline // ignore: cast_nullable_to_non_nullable
              as String,
      title: title == freezed
          ? _value.title
          : title // ignore: cast_nullable_to_non_nullable
              as String,
      video: video == freezed
          ? _value.video
          : video // ignore: cast_nullable_to_non_nullable
              as bool,
      vote_average: vote_average == freezed
          ? _value.vote_average
          : vote_average // ignore: cast_nullable_to_non_nullable
              as double,
      vote_count: vote_count == freezed
          ? _value.vote_count
          : vote_count // ignore: cast_nullable_to_non_nullable
              as int,
    ));
  }
}

/// @nodoc
abstract class _$MovieDetailsCopyWith<$Res>
    implements $MovieDetailsCopyWith<$Res> {
  factory _$MovieDetailsCopyWith(
          _MovieDetails value, $Res Function(_MovieDetails) then) =
      __$MovieDetailsCopyWithImpl<$Res>;
  @override
  $Res call(
      {bool adult,
      String backdrop_path,
      dynamic belongs_to_collection,
      int budget,
      List<Genre>? genres,
      String homepage,
      int id,
      String imdb_id,
      String original_language,
      String original_title,
      String overview,
      double popularity,
      String poster_path,
      List<ProductionCompany> production_companies,
      List<ProductionCountry> production_countries,
      String release_date,
      int revenue,
      int runtime,
      List<SpokenLanguage> spoken_languages,
      String status,
      String tagline,
      String title,
      bool video,
      double vote_average,
      int vote_count});
}

/// @nodoc
class __$MovieDetailsCopyWithImpl<$Res> extends _$MovieDetailsCopyWithImpl<$Res>
    implements _$MovieDetailsCopyWith<$Res> {
  __$MovieDetailsCopyWithImpl(
      _MovieDetails _value, $Res Function(_MovieDetails) _then)
      : super(_value, (v) => _then(v as _MovieDetails));

  @override
  _MovieDetails get _value => super._value as _MovieDetails;

  @override
  $Res call({
    Object? adult = freezed,
    Object? backdrop_path = freezed,
    Object? belongs_to_collection = freezed,
    Object? budget = freezed,
    Object? genres = freezed,
    Object? homepage = freezed,
    Object? id = freezed,
    Object? imdb_id = freezed,
    Object? original_language = freezed,
    Object? original_title = freezed,
    Object? overview = freezed,
    Object? popularity = freezed,
    Object? poster_path = freezed,
    Object? production_companies = freezed,
    Object? production_countries = freezed,
    Object? release_date = freezed,
    Object? revenue = freezed,
    Object? runtime = freezed,
    Object? spoken_languages = freezed,
    Object? status = freezed,
    Object? tagline = freezed,
    Object? title = freezed,
    Object? video = freezed,
    Object? vote_average = freezed,
    Object? vote_count = freezed,
  }) {
    return _then(_MovieDetails(
      adult: adult == freezed
          ? _value.adult
          : adult // ignore: cast_nullable_to_non_nullable
              as bool,
      backdrop_path: backdrop_path == freezed
          ? _value.backdrop_path
          : backdrop_path // ignore: cast_nullable_to_non_nullable
              as String,
      belongs_to_collection: belongs_to_collection == freezed
          ? _value.belongs_to_collection
          : belongs_to_collection // ignore: cast_nullable_to_non_nullable
              as dynamic,
      budget: budget == freezed
          ? _value.budget
          : budget // ignore: cast_nullable_to_non_nullable
              as int,
      genres: genres == freezed
          ? _value.genres
          : genres // ignore: cast_nullable_to_non_nullable
              as List<Genre>?,
      homepage: homepage == freezed
          ? _value.homepage
          : homepage // ignore: cast_nullable_to_non_nullable
              as String,
      id: id == freezed
          ? _value.id
          : id // ignore: cast_nullable_to_non_nullable
              as int,
      imdb_id: imdb_id == freezed
          ? _value.imdb_id
          : imdb_id // ignore: cast_nullable_to_non_nullable
              as String,
      original_language: original_language == freezed
          ? _value.original_language
          : original_language // ignore: cast_nullable_to_non_nullable
              as String,
      original_title: original_title == freezed
          ? _value.original_title
          : original_title // ignore: cast_nullable_to_non_nullable
              as String,
      overview: overview == freezed
          ? _value.overview
          : overview // ignore: cast_nullable_to_non_nullable
              as String,
      popularity: popularity == freezed
          ? _value.popularity
          : popularity // ignore: cast_nullable_to_non_nullable
              as double,
      poster_path: poster_path == freezed
          ? _value.poster_path
          : poster_path // ignore: cast_nullable_to_non_nullable
              as String,
      production_companies: production_companies == freezed
          ? _value.production_companies
          : production_companies // ignore: cast_nullable_to_non_nullable
              as List<ProductionCompany>,
      production_countries: production_countries == freezed
          ? _value.production_countries
          : production_countries // ignore: cast_nullable_to_non_nullable
              as List<ProductionCountry>,
      release_date: release_date == freezed
          ? _value.release_date
          : release_date // ignore: cast_nullable_to_non_nullable
              as String,
      revenue: revenue == freezed
          ? _value.revenue
          : revenue // ignore: cast_nullable_to_non_nullable
              as int,
      runtime: runtime == freezed
          ? _value.runtime
          : runtime // ignore: cast_nullable_to_non_nullable
              as int,
      spoken_languages: spoken_languages == freezed
          ? _value.spoken_languages
          : spoken_languages // ignore: cast_nullable_to_non_nullable
              as List<SpokenLanguage>,
      status: status == freezed
          ? _value.status
          : status // ignore: cast_nullable_to_non_nullable
              as String,
      tagline: tagline == freezed
          ? _value.tagline
          : tagline // ignore: cast_nullable_to_non_nullable
              as String,
      title: title == freezed
          ? _value.title
          : title // ignore: cast_nullable_to_non_nullable
              as String,
      video: video == freezed
          ? _value.video
          : video // ignore: cast_nullable_to_non_nullable
              as bool,
      vote_average: vote_average == freezed
          ? _value.vote_average
          : vote_average // ignore: cast_nullable_to_non_nullable
              as double,
      vote_count: vote_count == freezed
          ? _value.vote_count
          : vote_count // ignore: cast_nullable_to_non_nullable
              as int,
    ));
  }
}

/// @nodoc
@JsonSerializable()
class _$_MovieDetails implements _MovieDetails {
  _$_MovieDetails(
      {required this.adult,
      required this.backdrop_path,
      this.belongs_to_collection,
      required this.budget,
      final List<Genre>? genres,
      required this.homepage,
      required this.id,
      required this.imdb_id,
      required this.original_language,
      required this.original_title,
      required this.overview,
      required this.popularity,
      required this.poster_path,
      required final List<ProductionCompany> production_companies,
      required final List<ProductionCountry> production_countries,
      required this.release_date,
      required this.revenue,
      required this.runtime,
      required final List<SpokenLanguage> spoken_languages,
      required this.status,
      required this.tagline,
      required this.title,
      required this.video,
      required this.vote_average,
      required this.vote_count})
      : _genres = genres,
        _production_companies = production_companies,
        _production_countries = production_countries,
        _spoken_languages = spoken_languages;

  factory _$_MovieDetails.fromJson(Map<String, dynamic> json) =>
      _$$_MovieDetailsFromJson(json);

  @override
  final bool adult;
  @override
  final String backdrop_path;
  @override
  final dynamic belongs_to_collection;
  @override
  final int budget;
  final List<Genre>? _genres;
  @override
  List<Genre>? get genres {
    final value = _genres;
    if (value == null) return null;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(value);
  }

  @override
  final String homepage;
  @override
  final int id;
  @override
  final String imdb_id;
  @override
  final String original_language;
  @override
  final String original_title;
  @override
  final String overview;
  @override
  final double popularity;
  @override
  final String poster_path;
  final List<ProductionCompany> _production_companies;
  @override
  List<ProductionCompany> get production_companies {
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(_production_companies);
  }

  final List<ProductionCountry> _production_countries;
  @override
  List<ProductionCountry> get production_countries {
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(_production_countries);
  }

  @override
  final String release_date;
  @override
  final int revenue;
  @override
  final int runtime;
  final List<SpokenLanguage> _spoken_languages;
  @override
  List<SpokenLanguage> get spoken_languages {
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(_spoken_languages);
  }

  @override
  final String status;
  @override
  final String tagline;
  @override
  final String title;
  @override
  final bool video;
  @override
  final double vote_average;
  @override
  final int vote_count;

  @override
  String toString() {
    return 'MovieDetails(adult: $adult, backdrop_path: $backdrop_path, belongs_to_collection: $belongs_to_collection, budget: $budget, genres: $genres, homepage: $homepage, id: $id, imdb_id: $imdb_id, original_language: $original_language, original_title: $original_title, overview: $overview, popularity: $popularity, poster_path: $poster_path, production_companies: $production_companies, production_countries: $production_countries, release_date: $release_date, revenue: $revenue, runtime: $runtime, spoken_languages: $spoken_languages, status: $status, tagline: $tagline, title: $title, video: $video, vote_average: $vote_average, vote_count: $vote_count)';
  }

  @override
  bool operator ==(dynamic other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _MovieDetails &&
            const DeepCollectionEquality().equals(other.adult, adult) &&
            const DeepCollectionEquality()
                .equals(other.backdrop_path, backdrop_path) &&
            const DeepCollectionEquality()
                .equals(other.belongs_to_collection, belongs_to_collection) &&
            const DeepCollectionEquality().equals(other.budget, budget) &&
            const DeepCollectionEquality().equals(other.genres, genres) &&
            const DeepCollectionEquality().equals(other.homepage, homepage) &&
            const DeepCollectionEquality().equals(other.id, id) &&
            const DeepCollectionEquality().equals(other.imdb_id, imdb_id) &&
            const DeepCollectionEquality()
                .equals(other.original_language, original_language) &&
            const DeepCollectionEquality()
                .equals(other.original_title, original_title) &&
            const DeepCollectionEquality().equals(other.overview, overview) &&
            const DeepCollectionEquality()
                .equals(other.popularity, popularity) &&
            const DeepCollectionEquality()
                .equals(other.poster_path, poster_path) &&
            const DeepCollectionEquality()
                .equals(other.production_companies, production_companies) &&
            const DeepCollectionEquality()
                .equals(other.production_countries, production_countries) &&
            const DeepCollectionEquality()
                .equals(other.release_date, release_date) &&
            const DeepCollectionEquality().equals(other.revenue, revenue) &&
            const DeepCollectionEquality().equals(other.runtime, runtime) &&
            const DeepCollectionEquality()
                .equals(other.spoken_languages, spoken_languages) &&
            const DeepCollectionEquality().equals(other.status, status) &&
            const DeepCollectionEquality().equals(other.tagline, tagline) &&
            const DeepCollectionEquality().equals(other.title, title) &&
            const DeepCollectionEquality().equals(other.video, video) &&
            const DeepCollectionEquality()
                .equals(other.vote_average, vote_average) &&
            const DeepCollectionEquality()
                .equals(other.vote_count, vote_count));
  }

  @JsonKey(ignore: true)
  @override
  int get hashCode => Object.hashAll([
        runtimeType,
        const DeepCollectionEquality().hash(adult),
        const DeepCollectionEquality().hash(backdrop_path),
        const DeepCollectionEquality().hash(belongs_to_collection),
        const DeepCollectionEquality().hash(budget),
        const DeepCollectionEquality().hash(genres),
        const DeepCollectionEquality().hash(homepage),
        const DeepCollectionEquality().hash(id),
        const DeepCollectionEquality().hash(imdb_id),
        const DeepCollectionEquality().hash(original_language),
        const DeepCollectionEquality().hash(original_title),
        const DeepCollectionEquality().hash(overview),
        const DeepCollectionEquality().hash(popularity),
        const DeepCollectionEquality().hash(poster_path),
        const DeepCollectionEquality().hash(production_companies),
        const DeepCollectionEquality().hash(production_countries),
        const DeepCollectionEquality().hash(release_date),
        const DeepCollectionEquality().hash(revenue),
        const DeepCollectionEquality().hash(runtime),
        const DeepCollectionEquality().hash(spoken_languages),
        const DeepCollectionEquality().hash(status),
        const DeepCollectionEquality().hash(tagline),
        const DeepCollectionEquality().hash(title),
        const DeepCollectionEquality().hash(video),
        const DeepCollectionEquality().hash(vote_average),
        const DeepCollectionEquality().hash(vote_count)
      ]);

  @JsonKey(ignore: true)
  @override
  _$MovieDetailsCopyWith<_MovieDetails> get copyWith =>
      __$MovieDetailsCopyWithImpl<_MovieDetails>(this, _$identity);

  @override
  Map<String, dynamic> toJson() {
    return _$$_MovieDetailsToJson(this);
  }
}

abstract class _MovieDetails implements MovieDetails {
  factory _MovieDetails(
      {required final bool adult,
      required final String backdrop_path,
      final dynamic belongs_to_collection,
      required final int budget,
      final List<Genre>? genres,
      required final String homepage,
      required final int id,
      required final String imdb_id,
      required final String original_language,
      required final String original_title,
      required final String overview,
      required final double popularity,
      required final String poster_path,
      required final List<ProductionCompany> production_companies,
      required final List<ProductionCountry> production_countries,
      required final String release_date,
      required final int revenue,
      required final int runtime,
      required final List<SpokenLanguage> spoken_languages,
      required final String status,
      required final String tagline,
      required final String title,
      required final bool video,
      required final double vote_average,
      required final int vote_count}) = _$_MovieDetails;

  factory _MovieDetails.fromJson(Map<String, dynamic> json) =
      _$_MovieDetails.fromJson;

  @override
  bool get adult => throw _privateConstructorUsedError;
  @override
  String get backdrop_path => throw _privateConstructorUsedError;
  @override
  dynamic get belongs_to_collection => throw _privateConstructorUsedError;
  @override
  int get budget => throw _privateConstructorUsedError;
  @override
  List<Genre>? get genres => throw _privateConstructorUsedError;
  @override
  String get homepage => throw _privateConstructorUsedError;
  @override
  int get id => throw _privateConstructorUsedError;
  @override
  String get imdb_id => throw _privateConstructorUsedError;
  @override
  String get original_language => throw _privateConstructorUsedError;
  @override
  String get original_title => throw _privateConstructorUsedError;
  @override
  String get overview => throw _privateConstructorUsedError;
  @override
  double get popularity => throw _privateConstructorUsedError;
  @override
  String get poster_path => throw _privateConstructorUsedError;
  @override
  List<ProductionCompany> get production_companies =>
      throw _privateConstructorUsedError;
  @override
  List<ProductionCountry> get production_countries =>
      throw _privateConstructorUsedError;
  @override
  String get release_date => throw _privateConstructorUsedError;
  @override
  int get revenue => throw _privateConstructorUsedError;
  @override
  int get runtime => throw _privateConstructorUsedError;
  @override
  List<SpokenLanguage> get spoken_languages =>
      throw _privateConstructorUsedError;
  @override
  String get status => throw _privateConstructorUsedError;
  @override
  String get tagline => throw _privateConstructorUsedError;
  @override
  String get title => throw _privateConstructorUsedError;
  @override
  bool get video => throw _privateConstructorUsedError;
  @override
  double get vote_average => throw _privateConstructorUsedError;
  @override
  int get vote_count => throw _privateConstructorUsedError;
  @override
  @JsonKey(ignore: true)
  _$MovieDetailsCopyWith<_MovieDetails> get copyWith =>
      throw _privateConstructorUsedError;
}
