// GENERATED CODE - DO NOT MODIFY BY HAND

part of 'debug_event.dart';

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

Serializer<DebugEvent> _$debugEventSerializer = _$DebugEventSerializer();
Serializer<BatchedDebugEvents> _$batchedDebugEventsSerializer =
    _$BatchedDebugEventsSerializer();

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

  @override
  Iterable<Object?> serialize(
    Serializers serializers,
    DebugEvent object, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = <Object?>[
      'kind',
      serializers.serialize(object.kind, specifiedType: const FullType(String)),
      'eventData',
      serializers.serialize(
        object.eventData,
        specifiedType: const FullType(String),
      ),
      'timestamp',
      serializers.serialize(
        object.timestamp,
        specifiedType: const FullType(int),
      ),
    ];

    return result;
  }

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

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

    return result.build();
  }
}

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

  @override
  Iterable<Object?> serialize(
    Serializers serializers,
    BatchedDebugEvents object, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = <Object?>[
      'events',
      serializers.serialize(
        object.events,
        specifiedType: const FullType(BuiltList, const [
          const FullType(DebugEvent),
        ]),
      ),
    ];

    return result;
  }

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

    final iterator = serialized.iterator;
    while (iterator.moveNext()) {
      final key = iterator.current! as String;
      iterator.moveNext();
      final Object? value = iterator.current;
      switch (key) {
        case 'events':
          result.events.replace(
            serializers.deserialize(
                  value,
                  specifiedType: const FullType(BuiltList, const [
                    const FullType(DebugEvent),
                  ]),
                )!
                as BuiltList<Object?>,
          );
          break;
      }
    }

    return result.build();
  }
}

class _$DebugEvent extends DebugEvent {
  @override
  final String kind;
  @override
  final String eventData;
  @override
  final int timestamp;

  factory _$DebugEvent([void Function(DebugEventBuilder)? updates]) =>
      (DebugEventBuilder()..update(updates))._build();

  _$DebugEvent._({
    required this.kind,
    required this.eventData,
    required this.timestamp,
  }) : super._();
  @override
  DebugEvent rebuild(void Function(DebugEventBuilder) updates) =>
      (toBuilder()..update(updates)).build();

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

  @override
  bool operator ==(Object other) {
    if (identical(other, this)) return true;
    return other is DebugEvent &&
        kind == other.kind &&
        eventData == other.eventData &&
        timestamp == other.timestamp;
  }

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

  @override
  String toString() {
    return (newBuiltValueToStringHelper(r'DebugEvent')
          ..add('kind', kind)
          ..add('eventData', eventData)
          ..add('timestamp', timestamp))
        .toString();
  }
}

class DebugEventBuilder implements Builder<DebugEvent, DebugEventBuilder> {
  _$DebugEvent? _$v;

  String? _kind;
  String? get kind => _$this._kind;
  set kind(String? kind) => _$this._kind = kind;

  String? _eventData;
  String? get eventData => _$this._eventData;
  set eventData(String? eventData) => _$this._eventData = eventData;

  int? _timestamp;
  int? get timestamp => _$this._timestamp;
  set timestamp(int? timestamp) => _$this._timestamp = timestamp;

  DebugEventBuilder();

  DebugEventBuilder get _$this {
    final $v = _$v;
    if ($v != null) {
      _kind = $v.kind;
      _eventData = $v.eventData;
      _timestamp = $v.timestamp;
      _$v = null;
    }
    return this;
  }

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

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

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

  _$DebugEvent _build() {
    final _$result =
        _$v ??
        _$DebugEvent._(
          kind: BuiltValueNullFieldError.checkNotNull(
            kind,
            r'DebugEvent',
            'kind',
          ),
          eventData: BuiltValueNullFieldError.checkNotNull(
            eventData,
            r'DebugEvent',
            'eventData',
          ),
          timestamp: BuiltValueNullFieldError.checkNotNull(
            timestamp,
            r'DebugEvent',
            'timestamp',
          ),
        );
    replace(_$result);
    return _$result;
  }
}

class _$BatchedDebugEvents extends BatchedDebugEvents {
  @override
  final BuiltList<DebugEvent> events;

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

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

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

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

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

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

class BatchedDebugEventsBuilder
    implements Builder<BatchedDebugEvents, BatchedDebugEventsBuilder> {
  _$BatchedDebugEvents? _$v;

  ListBuilder<DebugEvent>? _events;
  ListBuilder<DebugEvent> get events =>
      _$this._events ??= ListBuilder<DebugEvent>();
  set events(ListBuilder<DebugEvent>? events) => _$this._events = events;

  BatchedDebugEventsBuilder();

  BatchedDebugEventsBuilder get _$this {
    final $v = _$v;
    if ($v != null) {
      _events = $v.events.toBuilder();
      _$v = null;
    }
    return this;
  }

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

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

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

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

// ignore_for_file: deprecated_member_use_from_same_package,type=lint
