// 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, unnecessary_question_mark

part of 'ranks.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#adding-getters-and-methods-to-our-models',
);

Ranks _$RanksFromJson(Map<String, dynamic> json) {
  return _Ranks.fromJson(json);
}

/// @nodoc
mixin _$Ranks {
  int? get id => throw _privateConstructorUsedError;
  String? get name => throw _privateConstructorUsedError;
  String? get icon => throw _privateConstructorUsedError;

  /// Serializes this Ranks to a JSON map.
  Map<String, dynamic> toJson() => throw _privateConstructorUsedError;

  /// Create a copy of Ranks
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  $RanksCopyWith<Ranks> get copyWith => throw _privateConstructorUsedError;
}

/// @nodoc
abstract class $RanksCopyWith<$Res> {
  factory $RanksCopyWith(Ranks value, $Res Function(Ranks) then) =
      _$RanksCopyWithImpl<$Res, Ranks>;
  @useResult
  $Res call({int? id, String? name, String? icon});
}

/// @nodoc
class _$RanksCopyWithImpl<$Res, $Val extends Ranks>
    implements $RanksCopyWith<$Res> {
  _$RanksCopyWithImpl(this._value, this._then);

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

  /// Create a copy of Ranks
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? id = freezed,
    Object? name = freezed,
    Object? icon = freezed,
  }) {
    return _then(
      _value.copyWith(
            id: freezed == id
                ? _value.id
                : id // ignore: cast_nullable_to_non_nullable
                      as int?,
            name: freezed == name
                ? _value.name
                : name // ignore: cast_nullable_to_non_nullable
                      as String?,
            icon: freezed == icon
                ? _value.icon
                : icon // ignore: cast_nullable_to_non_nullable
                      as String?,
          )
          as $Val,
    );
  }
}

/// @nodoc
abstract class _$$RanksImplCopyWith<$Res> implements $RanksCopyWith<$Res> {
  factory _$$RanksImplCopyWith(
    _$RanksImpl value,
    $Res Function(_$RanksImpl) then,
  ) = __$$RanksImplCopyWithImpl<$Res>;
  @override
  @useResult
  $Res call({int? id, String? name, String? icon});
}

/// @nodoc
class __$$RanksImplCopyWithImpl<$Res>
    extends _$RanksCopyWithImpl<$Res, _$RanksImpl>
    implements _$$RanksImplCopyWith<$Res> {
  __$$RanksImplCopyWithImpl(
    _$RanksImpl _value,
    $Res Function(_$RanksImpl) _then,
  ) : super(_value, _then);

  /// Create a copy of Ranks
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? id = freezed,
    Object? name = freezed,
    Object? icon = freezed,
  }) {
    return _then(
      _$RanksImpl(
        id: freezed == id
            ? _value.id
            : id // ignore: cast_nullable_to_non_nullable
                  as int?,
        name: freezed == name
            ? _value.name
            : name // ignore: cast_nullable_to_non_nullable
                  as String?,
        icon: freezed == icon
            ? _value.icon
            : icon // ignore: cast_nullable_to_non_nullable
                  as String?,
      ),
    );
  }
}

/// @nodoc
@JsonSerializable()
class _$RanksImpl with DiagnosticableTreeMixin implements _Ranks {
  const _$RanksImpl({this.id, this.name, this.icon});

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

  @override
  final int? id;
  @override
  final String? name;
  @override
  final String? icon;

  @override
  String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) {
    return 'Ranks(id: $id, name: $name, icon: $icon)';
  }

  @override
  void debugFillProperties(DiagnosticPropertiesBuilder properties) {
    super.debugFillProperties(properties);
    properties
      ..add(DiagnosticsProperty('type', 'Ranks'))
      ..add(DiagnosticsProperty('id', id))
      ..add(DiagnosticsProperty('name', name))
      ..add(DiagnosticsProperty('icon', icon));
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$RanksImpl &&
            (identical(other.id, id) || other.id == id) &&
            (identical(other.name, name) || other.name == name) &&
            (identical(other.icon, icon) || other.icon == icon));
  }

  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  int get hashCode => Object.hash(runtimeType, id, name, icon);

  /// Create a copy of Ranks
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$RanksImplCopyWith<_$RanksImpl> get copyWith =>
      __$$RanksImplCopyWithImpl<_$RanksImpl>(this, _$identity);

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

abstract class _Ranks implements Ranks {
  const factory _Ranks({
    final int? id,
    final String? name,
    final String? icon,
  }) = _$RanksImpl;

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

  @override
  int? get id;
  @override
  String? get name;
  @override
  String? get icon;

  /// Create a copy of Ranks
  /// with the given fields replaced by the non-null parameter values.
  @override
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$RanksImplCopyWith<_$RanksImpl> get copyWith =>
      throw _privateConstructorUsedError;
}
