// GENERATED CODE - DO NOT MODIFY BY HAND

part of 'authenticate_telegram_login.var.gql.dart';

// **************************************************************************
// BuiltValueGenerator
// **************************************************************************

Serializer<GAuthenticateTelegramLoginVars>
_$gAuthenticateTelegramLoginVarsSerializer =
    _$GAuthenticateTelegramLoginVarsSerializer();

class _$GAuthenticateTelegramLoginVarsSerializer
    implements StructuredSerializer<GAuthenticateTelegramLoginVars> {
  @override
  final Iterable<Type> types = const [
    GAuthenticateTelegramLoginVars,
    _$GAuthenticateTelegramLoginVars,
  ];
  @override
  final String wireName = 'GAuthenticateTelegramLoginVars';

  @override
  Iterable<Object?> serialize(
    Serializers serializers,
    GAuthenticateTelegramLoginVars object, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = <Object?>[
      'input',
      serializers.serialize(
        object.input,
        specifiedType: const FullType(_i1.GAuthenticateTelegramLoginInput),
      ),
    ];

    return result;
  }

  @override
  GAuthenticateTelegramLoginVars deserialize(
    Serializers serializers,
    Iterable<Object?> serialized, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = GAuthenticateTelegramLoginVarsBuilder();

    final iterator = serialized.iterator;
    while (iterator.moveNext()) {
      final key = iterator.current! as String;
      iterator.moveNext();
      final Object? value = iterator.current;
      switch (key) {
        case 'input':
          result.input.replace(
            serializers.deserialize(
                  value,
                  specifiedType: const FullType(
                    _i1.GAuthenticateTelegramLoginInput,
                  ),
                )!
                as _i1.GAuthenticateTelegramLoginInput,
          );
          break;
      }
    }

    return result.build();
  }
}

class _$GAuthenticateTelegramLoginVars extends GAuthenticateTelegramLoginVars {
  @override
  final _i1.GAuthenticateTelegramLoginInput input;

  factory _$GAuthenticateTelegramLoginVars([
    void Function(GAuthenticateTelegramLoginVarsBuilder)? updates,
  ]) => (GAuthenticateTelegramLoginVarsBuilder()..update(updates))._build();

  _$GAuthenticateTelegramLoginVars._({required this.input}) : super._();
  @override
  GAuthenticateTelegramLoginVars rebuild(
    void Function(GAuthenticateTelegramLoginVarsBuilder) updates,
  ) => (toBuilder()..update(updates)).build();

  @override
  GAuthenticateTelegramLoginVarsBuilder toBuilder() =>
      GAuthenticateTelegramLoginVarsBuilder()..replace(this);

  @override
  bool operator ==(Object other) {
    if (identical(other, this)) return true;
    return other is GAuthenticateTelegramLoginVars && input == other.input;
  }

  @override
  int get hashCode {
    var _$hash = 0;
    _$hash = $jc(_$hash, input.hashCode);
    _$hash = $jf(_$hash);
    return _$hash;
  }

  @override
  String toString() {
    return (newBuiltValueToStringHelper(
      r'GAuthenticateTelegramLoginVars',
    )..add('input', input)).toString();
  }
}

class GAuthenticateTelegramLoginVarsBuilder
    implements
        Builder<
          GAuthenticateTelegramLoginVars,
          GAuthenticateTelegramLoginVarsBuilder
        > {
  _$GAuthenticateTelegramLoginVars? _$v;

  _i1.GAuthenticateTelegramLoginInputBuilder? _input;
  _i1.GAuthenticateTelegramLoginInputBuilder get input =>
      _$this._input ??= _i1.GAuthenticateTelegramLoginInputBuilder();
  set input(_i1.GAuthenticateTelegramLoginInputBuilder? input) =>
      _$this._input = input;

  GAuthenticateTelegramLoginVarsBuilder();

  GAuthenticateTelegramLoginVarsBuilder get _$this {
    final $v = _$v;
    if ($v != null) {
      _input = $v.input.toBuilder();
      _$v = null;
    }
    return this;
  }

  @override
  void replace(GAuthenticateTelegramLoginVars other) {
    _$v = other as _$GAuthenticateTelegramLoginVars;
  }

  @override
  void update(void Function(GAuthenticateTelegramLoginVarsBuilder)? updates) {
    if (updates != null) updates(this);
  }

  @override
  GAuthenticateTelegramLoginVars build() => _build();

  _$GAuthenticateTelegramLoginVars _build() {
    _$GAuthenticateTelegramLoginVars _$result;
    try {
      _$result =
          _$v ?? _$GAuthenticateTelegramLoginVars._(input: input.build());
    } catch (_) {
      late String _$failedField;
      try {
        _$failedField = 'input';
        input.build();
      } catch (e) {
        throw BuiltValueNestedFieldError(
          r'GAuthenticateTelegramLoginVars',
          _$failedField,
          e.toString(),
        );
      }
      rethrow;
    }
    replace(_$result);
    return _$result;
  }
}

// ignore_for_file: deprecated_member_use_from_same_package,type=lint
