// 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 '../clash_config.dart'; // ************************************************************************** // FreezedGenerator // ************************************************************************** T _$identity(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'); ProxyGroup _$ProxyGroupFromJson(Map json) { return _ProxyGroup.fromJson(json); } /// @nodoc mixin _$ProxyGroup { String get name => throw _privateConstructorUsedError; @JsonKey(fromJson: GroupType.parseProfileType) GroupType get type => throw _privateConstructorUsedError; List? get proxies => throw _privateConstructorUsedError; List? get use => throw _privateConstructorUsedError; int? get interval => throw _privateConstructorUsedError; bool? get lazy => throw _privateConstructorUsedError; String? get url => throw _privateConstructorUsedError; int? get timeout => throw _privateConstructorUsedError; @JsonKey(name: "max-failed-times") int? get maxFailedTimes => throw _privateConstructorUsedError; String? get filter => throw _privateConstructorUsedError; @JsonKey(name: "expected-filter") String? get excludeFilter => throw _privateConstructorUsedError; @JsonKey(name: "exclude-type") String? get excludeType => throw _privateConstructorUsedError; @JsonKey(name: "expected-status") dynamic get expectedStatus => throw _privateConstructorUsedError; bool? get hidden => throw _privateConstructorUsedError; String? get icon => throw _privateConstructorUsedError; /// Serializes this ProxyGroup to a JSON map. Map toJson() => throw _privateConstructorUsedError; /// Create a copy of ProxyGroup /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) $ProxyGroupCopyWith get copyWith => throw _privateConstructorUsedError; } /// @nodoc abstract class $ProxyGroupCopyWith<$Res> { factory $ProxyGroupCopyWith( ProxyGroup value, $Res Function(ProxyGroup) then) = _$ProxyGroupCopyWithImpl<$Res, ProxyGroup>; @useResult $Res call( {String name, @JsonKey(fromJson: GroupType.parseProfileType) GroupType type, List? proxies, List? use, int? interval, bool? lazy, String? url, int? timeout, @JsonKey(name: "max-failed-times") int? maxFailedTimes, String? filter, @JsonKey(name: "expected-filter") String? excludeFilter, @JsonKey(name: "exclude-type") String? excludeType, @JsonKey(name: "expected-status") dynamic expectedStatus, bool? hidden, String? icon}); } /// @nodoc class _$ProxyGroupCopyWithImpl<$Res, $Val extends ProxyGroup> implements $ProxyGroupCopyWith<$Res> { _$ProxyGroupCopyWithImpl(this._value, this._then); // ignore: unused_field final $Val _value; // ignore: unused_field final $Res Function($Val) _then; /// Create a copy of ProxyGroup /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? name = null, Object? type = null, Object? proxies = freezed, Object? use = freezed, Object? interval = freezed, Object? lazy = freezed, Object? url = freezed, Object? timeout = freezed, Object? maxFailedTimes = freezed, Object? filter = freezed, Object? excludeFilter = freezed, Object? excludeType = freezed, Object? expectedStatus = freezed, Object? hidden = freezed, Object? icon = freezed, }) { return _then(_value.copyWith( name: null == name ? _value.name : name // ignore: cast_nullable_to_non_nullable as String, type: null == type ? _value.type : type // ignore: cast_nullable_to_non_nullable as GroupType, proxies: freezed == proxies ? _value.proxies : proxies // ignore: cast_nullable_to_non_nullable as List?, use: freezed == use ? _value.use : use // ignore: cast_nullable_to_non_nullable as List?, interval: freezed == interval ? _value.interval : interval // ignore: cast_nullable_to_non_nullable as int?, lazy: freezed == lazy ? _value.lazy : lazy // ignore: cast_nullable_to_non_nullable as bool?, url: freezed == url ? _value.url : url // ignore: cast_nullable_to_non_nullable as String?, timeout: freezed == timeout ? _value.timeout : timeout // ignore: cast_nullable_to_non_nullable as int?, maxFailedTimes: freezed == maxFailedTimes ? _value.maxFailedTimes : maxFailedTimes // ignore: cast_nullable_to_non_nullable as int?, filter: freezed == filter ? _value.filter : filter // ignore: cast_nullable_to_non_nullable as String?, excludeFilter: freezed == excludeFilter ? _value.excludeFilter : excludeFilter // ignore: cast_nullable_to_non_nullable as String?, excludeType: freezed == excludeType ? _value.excludeType : excludeType // ignore: cast_nullable_to_non_nullable as String?, expectedStatus: freezed == expectedStatus ? _value.expectedStatus : expectedStatus // ignore: cast_nullable_to_non_nullable as dynamic, hidden: freezed == hidden ? _value.hidden : hidden // ignore: cast_nullable_to_non_nullable as bool?, icon: freezed == icon ? _value.icon : icon // ignore: cast_nullable_to_non_nullable as String?, ) as $Val); } } /// @nodoc abstract class _$$ProxyGroupImplCopyWith<$Res> implements $ProxyGroupCopyWith<$Res> { factory _$$ProxyGroupImplCopyWith( _$ProxyGroupImpl value, $Res Function(_$ProxyGroupImpl) then) = __$$ProxyGroupImplCopyWithImpl<$Res>; @override @useResult $Res call( {String name, @JsonKey(fromJson: GroupType.parseProfileType) GroupType type, List? proxies, List? use, int? interval, bool? lazy, String? url, int? timeout, @JsonKey(name: "max-failed-times") int? maxFailedTimes, String? filter, @JsonKey(name: "expected-filter") String? excludeFilter, @JsonKey(name: "exclude-type") String? excludeType, @JsonKey(name: "expected-status") dynamic expectedStatus, bool? hidden, String? icon}); } /// @nodoc class __$$ProxyGroupImplCopyWithImpl<$Res> extends _$ProxyGroupCopyWithImpl<$Res, _$ProxyGroupImpl> implements _$$ProxyGroupImplCopyWith<$Res> { __$$ProxyGroupImplCopyWithImpl( _$ProxyGroupImpl _value, $Res Function(_$ProxyGroupImpl) _then) : super(_value, _then); /// Create a copy of ProxyGroup /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? name = null, Object? type = null, Object? proxies = freezed, Object? use = freezed, Object? interval = freezed, Object? lazy = freezed, Object? url = freezed, Object? timeout = freezed, Object? maxFailedTimes = freezed, Object? filter = freezed, Object? excludeFilter = freezed, Object? excludeType = freezed, Object? expectedStatus = freezed, Object? hidden = freezed, Object? icon = freezed, }) { return _then(_$ProxyGroupImpl( name: null == name ? _value.name : name // ignore: cast_nullable_to_non_nullable as String, type: null == type ? _value.type : type // ignore: cast_nullable_to_non_nullable as GroupType, proxies: freezed == proxies ? _value._proxies : proxies // ignore: cast_nullable_to_non_nullable as List?, use: freezed == use ? _value._use : use // ignore: cast_nullable_to_non_nullable as List?, interval: freezed == interval ? _value.interval : interval // ignore: cast_nullable_to_non_nullable as int?, lazy: freezed == lazy ? _value.lazy : lazy // ignore: cast_nullable_to_non_nullable as bool?, url: freezed == url ? _value.url : url // ignore: cast_nullable_to_non_nullable as String?, timeout: freezed == timeout ? _value.timeout : timeout // ignore: cast_nullable_to_non_nullable as int?, maxFailedTimes: freezed == maxFailedTimes ? _value.maxFailedTimes : maxFailedTimes // ignore: cast_nullable_to_non_nullable as int?, filter: freezed == filter ? _value.filter : filter // ignore: cast_nullable_to_non_nullable as String?, excludeFilter: freezed == excludeFilter ? _value.excludeFilter : excludeFilter // ignore: cast_nullable_to_non_nullable as String?, excludeType: freezed == excludeType ? _value.excludeType : excludeType // ignore: cast_nullable_to_non_nullable as String?, expectedStatus: freezed == expectedStatus ? _value.expectedStatus : expectedStatus // ignore: cast_nullable_to_non_nullable as dynamic, hidden: freezed == hidden ? _value.hidden : hidden // ignore: cast_nullable_to_non_nullable as bool?, icon: freezed == icon ? _value.icon : icon // ignore: cast_nullable_to_non_nullable as String?, )); } } /// @nodoc @JsonSerializable() class _$ProxyGroupImpl implements _ProxyGroup { const _$ProxyGroupImpl( {required this.name, @JsonKey(fromJson: GroupType.parseProfileType) required this.type, final List? proxies, final List? use, this.interval, this.lazy, this.url, this.timeout, @JsonKey(name: "max-failed-times") this.maxFailedTimes, this.filter, @JsonKey(name: "expected-filter") this.excludeFilter, @JsonKey(name: "exclude-type") this.excludeType, @JsonKey(name: "expected-status") this.expectedStatus, this.hidden, this.icon}) : _proxies = proxies, _use = use; factory _$ProxyGroupImpl.fromJson(Map json) => _$$ProxyGroupImplFromJson(json); @override final String name; @override @JsonKey(fromJson: GroupType.parseProfileType) final GroupType type; final List? _proxies; @override List? get proxies { final value = _proxies; if (value == null) return null; if (_proxies is EqualUnmodifiableListView) return _proxies; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(value); } final List? _use; @override List? get use { final value = _use; if (value == null) return null; if (_use is EqualUnmodifiableListView) return _use; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(value); } @override final int? interval; @override final bool? lazy; @override final String? url; @override final int? timeout; @override @JsonKey(name: "max-failed-times") final int? maxFailedTimes; @override final String? filter; @override @JsonKey(name: "expected-filter") final String? excludeFilter; @override @JsonKey(name: "exclude-type") final String? excludeType; @override @JsonKey(name: "expected-status") final dynamic expectedStatus; @override final bool? hidden; @override final String? icon; @override String toString() { return 'ProxyGroup(name: $name, type: $type, proxies: $proxies, use: $use, interval: $interval, lazy: $lazy, url: $url, timeout: $timeout, maxFailedTimes: $maxFailedTimes, filter: $filter, excludeFilter: $excludeFilter, excludeType: $excludeType, expectedStatus: $expectedStatus, hidden: $hidden, icon: $icon)'; } @override bool operator ==(Object other) { return identical(this, other) || (other.runtimeType == runtimeType && other is _$ProxyGroupImpl && (identical(other.name, name) || other.name == name) && (identical(other.type, type) || other.type == type) && const DeepCollectionEquality().equals(other._proxies, _proxies) && const DeepCollectionEquality().equals(other._use, _use) && (identical(other.interval, interval) || other.interval == interval) && (identical(other.lazy, lazy) || other.lazy == lazy) && (identical(other.url, url) || other.url == url) && (identical(other.timeout, timeout) || other.timeout == timeout) && (identical(other.maxFailedTimes, maxFailedTimes) || other.maxFailedTimes == maxFailedTimes) && (identical(other.filter, filter) || other.filter == filter) && (identical(other.excludeFilter, excludeFilter) || other.excludeFilter == excludeFilter) && (identical(other.excludeType, excludeType) || other.excludeType == excludeType) && const DeepCollectionEquality() .equals(other.expectedStatus, expectedStatus) && (identical(other.hidden, hidden) || other.hidden == hidden) && (identical(other.icon, icon) || other.icon == icon)); } @JsonKey(includeFromJson: false, includeToJson: false) @override int get hashCode => Object.hash( runtimeType, name, type, const DeepCollectionEquality().hash(_proxies), const DeepCollectionEquality().hash(_use), interval, lazy, url, timeout, maxFailedTimes, filter, excludeFilter, excludeType, const DeepCollectionEquality().hash(expectedStatus), hidden, icon); /// Create a copy of ProxyGroup /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) @override @pragma('vm:prefer-inline') _$$ProxyGroupImplCopyWith<_$ProxyGroupImpl> get copyWith => __$$ProxyGroupImplCopyWithImpl<_$ProxyGroupImpl>(this, _$identity); @override Map toJson() { return _$$ProxyGroupImplToJson( this, ); } } abstract class _ProxyGroup implements ProxyGroup { const factory _ProxyGroup( {required final String name, @JsonKey(fromJson: GroupType.parseProfileType) required final GroupType type, final List? proxies, final List? use, final int? interval, final bool? lazy, final String? url, final int? timeout, @JsonKey(name: "max-failed-times") final int? maxFailedTimes, final String? filter, @JsonKey(name: "expected-filter") final String? excludeFilter, @JsonKey(name: "exclude-type") final String? excludeType, @JsonKey(name: "expected-status") final dynamic expectedStatus, final bool? hidden, final String? icon}) = _$ProxyGroupImpl; factory _ProxyGroup.fromJson(Map json) = _$ProxyGroupImpl.fromJson; @override String get name; @override @JsonKey(fromJson: GroupType.parseProfileType) GroupType get type; @override List? get proxies; @override List? get use; @override int? get interval; @override bool? get lazy; @override String? get url; @override int? get timeout; @override @JsonKey(name: "max-failed-times") int? get maxFailedTimes; @override String? get filter; @override @JsonKey(name: "expected-filter") String? get excludeFilter; @override @JsonKey(name: "exclude-type") String? get excludeType; @override @JsonKey(name: "expected-status") dynamic get expectedStatus; @override bool? get hidden; @override String? get icon; /// Create a copy of ProxyGroup /// with the given fields replaced by the non-null parameter values. @override @JsonKey(includeFromJson: false, includeToJson: false) _$$ProxyGroupImplCopyWith<_$ProxyGroupImpl> get copyWith => throw _privateConstructorUsedError; } RuleProvider _$RuleProviderFromJson(Map json) { return _RuleProvider.fromJson(json); } /// @nodoc mixin _$RuleProvider { String get name => throw _privateConstructorUsedError; /// Serializes this RuleProvider to a JSON map. Map toJson() => throw _privateConstructorUsedError; /// Create a copy of RuleProvider /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) $RuleProviderCopyWith get copyWith => throw _privateConstructorUsedError; } /// @nodoc abstract class $RuleProviderCopyWith<$Res> { factory $RuleProviderCopyWith( RuleProvider value, $Res Function(RuleProvider) then) = _$RuleProviderCopyWithImpl<$Res, RuleProvider>; @useResult $Res call({String name}); } /// @nodoc class _$RuleProviderCopyWithImpl<$Res, $Val extends RuleProvider> implements $RuleProviderCopyWith<$Res> { _$RuleProviderCopyWithImpl(this._value, this._then); // ignore: unused_field final $Val _value; // ignore: unused_field final $Res Function($Val) _then; /// Create a copy of RuleProvider /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? name = null, }) { return _then(_value.copyWith( name: null == name ? _value.name : name // ignore: cast_nullable_to_non_nullable as String, ) as $Val); } } /// @nodoc abstract class _$$RuleProviderImplCopyWith<$Res> implements $RuleProviderCopyWith<$Res> { factory _$$RuleProviderImplCopyWith( _$RuleProviderImpl value, $Res Function(_$RuleProviderImpl) then) = __$$RuleProviderImplCopyWithImpl<$Res>; @override @useResult $Res call({String name}); } /// @nodoc class __$$RuleProviderImplCopyWithImpl<$Res> extends _$RuleProviderCopyWithImpl<$Res, _$RuleProviderImpl> implements _$$RuleProviderImplCopyWith<$Res> { __$$RuleProviderImplCopyWithImpl( _$RuleProviderImpl _value, $Res Function(_$RuleProviderImpl) _then) : super(_value, _then); /// Create a copy of RuleProvider /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? name = null, }) { return _then(_$RuleProviderImpl( name: null == name ? _value.name : name // ignore: cast_nullable_to_non_nullable as String, )); } } /// @nodoc @JsonSerializable() class _$RuleProviderImpl implements _RuleProvider { const _$RuleProviderImpl({required this.name}); factory _$RuleProviderImpl.fromJson(Map json) => _$$RuleProviderImplFromJson(json); @override final String name; @override String toString() { return 'RuleProvider(name: $name)'; } @override bool operator ==(Object other) { return identical(this, other) || (other.runtimeType == runtimeType && other is _$RuleProviderImpl && (identical(other.name, name) || other.name == name)); } @JsonKey(includeFromJson: false, includeToJson: false) @override int get hashCode => Object.hash(runtimeType, name); /// Create a copy of RuleProvider /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) @override @pragma('vm:prefer-inline') _$$RuleProviderImplCopyWith<_$RuleProviderImpl> get copyWith => __$$RuleProviderImplCopyWithImpl<_$RuleProviderImpl>(this, _$identity); @override Map toJson() { return _$$RuleProviderImplToJson( this, ); } } abstract class _RuleProvider implements RuleProvider { const factory _RuleProvider({required final String name}) = _$RuleProviderImpl; factory _RuleProvider.fromJson(Map json) = _$RuleProviderImpl.fromJson; @override String get name; /// Create a copy of RuleProvider /// with the given fields replaced by the non-null parameter values. @override @JsonKey(includeFromJson: false, includeToJson: false) _$$RuleProviderImplCopyWith<_$RuleProviderImpl> get copyWith => throw _privateConstructorUsedError; } Tun _$TunFromJson(Map json) { return _Tun.fromJson(json); } /// @nodoc mixin _$Tun { bool get enable => throw _privateConstructorUsedError; String get device => throw _privateConstructorUsedError; @JsonKey(name: "auto-route") bool get autoRoute => throw _privateConstructorUsedError; TunStack get stack => throw _privateConstructorUsedError; @JsonKey(name: "dns-hijack") List get dnsHijack => throw _privateConstructorUsedError; @JsonKey(name: "route-address") List get routeAddress => throw _privateConstructorUsedError; /// Serializes this Tun to a JSON map. Map toJson() => throw _privateConstructorUsedError; /// Create a copy of Tun /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) $TunCopyWith get copyWith => throw _privateConstructorUsedError; } /// @nodoc abstract class $TunCopyWith<$Res> { factory $TunCopyWith(Tun value, $Res Function(Tun) then) = _$TunCopyWithImpl<$Res, Tun>; @useResult $Res call( {bool enable, String device, @JsonKey(name: "auto-route") bool autoRoute, TunStack stack, @JsonKey(name: "dns-hijack") List dnsHijack, @JsonKey(name: "route-address") List routeAddress}); } /// @nodoc class _$TunCopyWithImpl<$Res, $Val extends Tun> implements $TunCopyWith<$Res> { _$TunCopyWithImpl(this._value, this._then); // ignore: unused_field final $Val _value; // ignore: unused_field final $Res Function($Val) _then; /// Create a copy of Tun /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? enable = null, Object? device = null, Object? autoRoute = null, Object? stack = null, Object? dnsHijack = null, Object? routeAddress = null, }) { return _then(_value.copyWith( enable: null == enable ? _value.enable : enable // ignore: cast_nullable_to_non_nullable as bool, device: null == device ? _value.device : device // ignore: cast_nullable_to_non_nullable as String, autoRoute: null == autoRoute ? _value.autoRoute : autoRoute // ignore: cast_nullable_to_non_nullable as bool, stack: null == stack ? _value.stack : stack // ignore: cast_nullable_to_non_nullable as TunStack, dnsHijack: null == dnsHijack ? _value.dnsHijack : dnsHijack // ignore: cast_nullable_to_non_nullable as List, routeAddress: null == routeAddress ? _value.routeAddress : routeAddress // ignore: cast_nullable_to_non_nullable as List, ) as $Val); } } /// @nodoc abstract class _$$TunImplCopyWith<$Res> implements $TunCopyWith<$Res> { factory _$$TunImplCopyWith(_$TunImpl value, $Res Function(_$TunImpl) then) = __$$TunImplCopyWithImpl<$Res>; @override @useResult $Res call( {bool enable, String device, @JsonKey(name: "auto-route") bool autoRoute, TunStack stack, @JsonKey(name: "dns-hijack") List dnsHijack, @JsonKey(name: "route-address") List routeAddress}); } /// @nodoc class __$$TunImplCopyWithImpl<$Res> extends _$TunCopyWithImpl<$Res, _$TunImpl> implements _$$TunImplCopyWith<$Res> { __$$TunImplCopyWithImpl(_$TunImpl _value, $Res Function(_$TunImpl) _then) : super(_value, _then); /// Create a copy of Tun /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? enable = null, Object? device = null, Object? autoRoute = null, Object? stack = null, Object? dnsHijack = null, Object? routeAddress = null, }) { return _then(_$TunImpl( enable: null == enable ? _value.enable : enable // ignore: cast_nullable_to_non_nullable as bool, device: null == device ? _value.device : device // ignore: cast_nullable_to_non_nullable as String, autoRoute: null == autoRoute ? _value.autoRoute : autoRoute // ignore: cast_nullable_to_non_nullable as bool, stack: null == stack ? _value.stack : stack // ignore: cast_nullable_to_non_nullable as TunStack, dnsHijack: null == dnsHijack ? _value._dnsHijack : dnsHijack // ignore: cast_nullable_to_non_nullable as List, routeAddress: null == routeAddress ? _value._routeAddress : routeAddress // ignore: cast_nullable_to_non_nullable as List, )); } } /// @nodoc @JsonSerializable() class _$TunImpl implements _Tun { const _$TunImpl( {this.enable = false, this.device = appName, @JsonKey(name: "auto-route") this.autoRoute = false, this.stack = TunStack.mixed, @JsonKey(name: "dns-hijack") final List dnsHijack = const ["any:53"], @JsonKey(name: "route-address") final List routeAddress = const []}) : _dnsHijack = dnsHijack, _routeAddress = routeAddress; factory _$TunImpl.fromJson(Map json) => _$$TunImplFromJson(json); @override @JsonKey() final bool enable; @override @JsonKey() final String device; @override @JsonKey(name: "auto-route") final bool autoRoute; @override @JsonKey() final TunStack stack; final List _dnsHijack; @override @JsonKey(name: "dns-hijack") List get dnsHijack { if (_dnsHijack is EqualUnmodifiableListView) return _dnsHijack; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_dnsHijack); } final List _routeAddress; @override @JsonKey(name: "route-address") List get routeAddress { if (_routeAddress is EqualUnmodifiableListView) return _routeAddress; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_routeAddress); } @override String toString() { return 'Tun(enable: $enable, device: $device, autoRoute: $autoRoute, stack: $stack, dnsHijack: $dnsHijack, routeAddress: $routeAddress)'; } @override bool operator ==(Object other) { return identical(this, other) || (other.runtimeType == runtimeType && other is _$TunImpl && (identical(other.enable, enable) || other.enable == enable) && (identical(other.device, device) || other.device == device) && (identical(other.autoRoute, autoRoute) || other.autoRoute == autoRoute) && (identical(other.stack, stack) || other.stack == stack) && const DeepCollectionEquality() .equals(other._dnsHijack, _dnsHijack) && const DeepCollectionEquality() .equals(other._routeAddress, _routeAddress)); } @JsonKey(includeFromJson: false, includeToJson: false) @override int get hashCode => Object.hash( runtimeType, enable, device, autoRoute, stack, const DeepCollectionEquality().hash(_dnsHijack), const DeepCollectionEquality().hash(_routeAddress)); /// Create a copy of Tun /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) @override @pragma('vm:prefer-inline') _$$TunImplCopyWith<_$TunImpl> get copyWith => __$$TunImplCopyWithImpl<_$TunImpl>(this, _$identity); @override Map toJson() { return _$$TunImplToJson( this, ); } } abstract class _Tun implements Tun { const factory _Tun( {final bool enable, final String device, @JsonKey(name: "auto-route") final bool autoRoute, final TunStack stack, @JsonKey(name: "dns-hijack") final List dnsHijack, @JsonKey(name: "route-address") final List routeAddress}) = _$TunImpl; factory _Tun.fromJson(Map json) = _$TunImpl.fromJson; @override bool get enable; @override String get device; @override @JsonKey(name: "auto-route") bool get autoRoute; @override TunStack get stack; @override @JsonKey(name: "dns-hijack") List get dnsHijack; @override @JsonKey(name: "route-address") List get routeAddress; /// Create a copy of Tun /// with the given fields replaced by the non-null parameter values. @override @JsonKey(includeFromJson: false, includeToJson: false) _$$TunImplCopyWith<_$TunImpl> get copyWith => throw _privateConstructorUsedError; } FallbackFilter _$FallbackFilterFromJson(Map json) { return _FallbackFilter.fromJson(json); } /// @nodoc mixin _$FallbackFilter { bool get geoip => throw _privateConstructorUsedError; @JsonKey(name: "geoip-code") String get geoipCode => throw _privateConstructorUsedError; List get geosite => throw _privateConstructorUsedError; List get ipcidr => throw _privateConstructorUsedError; List get domain => throw _privateConstructorUsedError; /// Serializes this FallbackFilter to a JSON map. Map toJson() => throw _privateConstructorUsedError; /// Create a copy of FallbackFilter /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) $FallbackFilterCopyWith get copyWith => throw _privateConstructorUsedError; } /// @nodoc abstract class $FallbackFilterCopyWith<$Res> { factory $FallbackFilterCopyWith( FallbackFilter value, $Res Function(FallbackFilter) then) = _$FallbackFilterCopyWithImpl<$Res, FallbackFilter>; @useResult $Res call( {bool geoip, @JsonKey(name: "geoip-code") String geoipCode, List geosite, List ipcidr, List domain}); } /// @nodoc class _$FallbackFilterCopyWithImpl<$Res, $Val extends FallbackFilter> implements $FallbackFilterCopyWith<$Res> { _$FallbackFilterCopyWithImpl(this._value, this._then); // ignore: unused_field final $Val _value; // ignore: unused_field final $Res Function($Val) _then; /// Create a copy of FallbackFilter /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? geoip = null, Object? geoipCode = null, Object? geosite = null, Object? ipcidr = null, Object? domain = null, }) { return _then(_value.copyWith( geoip: null == geoip ? _value.geoip : geoip // ignore: cast_nullable_to_non_nullable as bool, geoipCode: null == geoipCode ? _value.geoipCode : geoipCode // ignore: cast_nullable_to_non_nullable as String, geosite: null == geosite ? _value.geosite : geosite // ignore: cast_nullable_to_non_nullable as List, ipcidr: null == ipcidr ? _value.ipcidr : ipcidr // ignore: cast_nullable_to_non_nullable as List, domain: null == domain ? _value.domain : domain // ignore: cast_nullable_to_non_nullable as List, ) as $Val); } } /// @nodoc abstract class _$$FallbackFilterImplCopyWith<$Res> implements $FallbackFilterCopyWith<$Res> { factory _$$FallbackFilterImplCopyWith(_$FallbackFilterImpl value, $Res Function(_$FallbackFilterImpl) then) = __$$FallbackFilterImplCopyWithImpl<$Res>; @override @useResult $Res call( {bool geoip, @JsonKey(name: "geoip-code") String geoipCode, List geosite, List ipcidr, List domain}); } /// @nodoc class __$$FallbackFilterImplCopyWithImpl<$Res> extends _$FallbackFilterCopyWithImpl<$Res, _$FallbackFilterImpl> implements _$$FallbackFilterImplCopyWith<$Res> { __$$FallbackFilterImplCopyWithImpl( _$FallbackFilterImpl _value, $Res Function(_$FallbackFilterImpl) _then) : super(_value, _then); /// Create a copy of FallbackFilter /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? geoip = null, Object? geoipCode = null, Object? geosite = null, Object? ipcidr = null, Object? domain = null, }) { return _then(_$FallbackFilterImpl( geoip: null == geoip ? _value.geoip : geoip // ignore: cast_nullable_to_non_nullable as bool, geoipCode: null == geoipCode ? _value.geoipCode : geoipCode // ignore: cast_nullable_to_non_nullable as String, geosite: null == geosite ? _value._geosite : geosite // ignore: cast_nullable_to_non_nullable as List, ipcidr: null == ipcidr ? _value._ipcidr : ipcidr // ignore: cast_nullable_to_non_nullable as List, domain: null == domain ? _value._domain : domain // ignore: cast_nullable_to_non_nullable as List, )); } } /// @nodoc @JsonSerializable() class _$FallbackFilterImpl implements _FallbackFilter { const _$FallbackFilterImpl( {this.geoip = true, @JsonKey(name: "geoip-code") this.geoipCode = "CN", final List geosite = const ["gfw"], final List ipcidr = const ["240.0.0.0/4"], final List domain = const [ "+.google.com", "+.facebook.com", "+.youtube.com" ]}) : _geosite = geosite, _ipcidr = ipcidr, _domain = domain; factory _$FallbackFilterImpl.fromJson(Map json) => _$$FallbackFilterImplFromJson(json); @override @JsonKey() final bool geoip; @override @JsonKey(name: "geoip-code") final String geoipCode; final List _geosite; @override @JsonKey() List get geosite { if (_geosite is EqualUnmodifiableListView) return _geosite; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_geosite); } final List _ipcidr; @override @JsonKey() List get ipcidr { if (_ipcidr is EqualUnmodifiableListView) return _ipcidr; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_ipcidr); } final List _domain; @override @JsonKey() List get domain { if (_domain is EqualUnmodifiableListView) return _domain; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_domain); } @override String toString() { return 'FallbackFilter(geoip: $geoip, geoipCode: $geoipCode, geosite: $geosite, ipcidr: $ipcidr, domain: $domain)'; } @override bool operator ==(Object other) { return identical(this, other) || (other.runtimeType == runtimeType && other is _$FallbackFilterImpl && (identical(other.geoip, geoip) || other.geoip == geoip) && (identical(other.geoipCode, geoipCode) || other.geoipCode == geoipCode) && const DeepCollectionEquality().equals(other._geosite, _geosite) && const DeepCollectionEquality().equals(other._ipcidr, _ipcidr) && const DeepCollectionEquality().equals(other._domain, _domain)); } @JsonKey(includeFromJson: false, includeToJson: false) @override int get hashCode => Object.hash( runtimeType, geoip, geoipCode, const DeepCollectionEquality().hash(_geosite), const DeepCollectionEquality().hash(_ipcidr), const DeepCollectionEquality().hash(_domain)); /// Create a copy of FallbackFilter /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) @override @pragma('vm:prefer-inline') _$$FallbackFilterImplCopyWith<_$FallbackFilterImpl> get copyWith => __$$FallbackFilterImplCopyWithImpl<_$FallbackFilterImpl>( this, _$identity); @override Map toJson() { return _$$FallbackFilterImplToJson( this, ); } } abstract class _FallbackFilter implements FallbackFilter { const factory _FallbackFilter( {final bool geoip, @JsonKey(name: "geoip-code") final String geoipCode, final List geosite, final List ipcidr, final List domain}) = _$FallbackFilterImpl; factory _FallbackFilter.fromJson(Map json) = _$FallbackFilterImpl.fromJson; @override bool get geoip; @override @JsonKey(name: "geoip-code") String get geoipCode; @override List get geosite; @override List get ipcidr; @override List get domain; /// Create a copy of FallbackFilter /// with the given fields replaced by the non-null parameter values. @override @JsonKey(includeFromJson: false, includeToJson: false) _$$FallbackFilterImplCopyWith<_$FallbackFilterImpl> get copyWith => throw _privateConstructorUsedError; } Dns _$DnsFromJson(Map json) { return _Dns.fromJson(json); } /// @nodoc mixin _$Dns { bool get enable => throw _privateConstructorUsedError; String get listen => throw _privateConstructorUsedError; @JsonKey(name: "prefer-h3") bool get preferH3 => throw _privateConstructorUsedError; @JsonKey(name: "use-hosts") bool get useHosts => throw _privateConstructorUsedError; @JsonKey(name: "use-system-hosts") bool get useSystemHosts => throw _privateConstructorUsedError; @JsonKey(name: "respect-rules") bool get respectRules => throw _privateConstructorUsedError; bool get ipv6 => throw _privateConstructorUsedError; @JsonKey(name: "default-nameserver") List get defaultNameserver => throw _privateConstructorUsedError; @JsonKey(name: "enhanced-mode") DnsMode get enhancedMode => throw _privateConstructorUsedError; @JsonKey(name: "fake-ip-range") String get fakeIpRange => throw _privateConstructorUsedError; @JsonKey(name: "fake-ip-filter") List get fakeIpFilter => throw _privateConstructorUsedError; @JsonKey(name: "nameserver-policy") Map get nameserverPolicy => throw _privateConstructorUsedError; List get nameserver => throw _privateConstructorUsedError; List get fallback => throw _privateConstructorUsedError; @JsonKey(name: "proxy-server-nameserver") List get proxyServerNameserver => throw _privateConstructorUsedError; @JsonKey(name: "fallback-filter") FallbackFilter get fallbackFilter => throw _privateConstructorUsedError; /// Serializes this Dns to a JSON map. Map toJson() => throw _privateConstructorUsedError; /// Create a copy of Dns /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) $DnsCopyWith get copyWith => throw _privateConstructorUsedError; } /// @nodoc abstract class $DnsCopyWith<$Res> { factory $DnsCopyWith(Dns value, $Res Function(Dns) then) = _$DnsCopyWithImpl<$Res, Dns>; @useResult $Res call( {bool enable, String listen, @JsonKey(name: "prefer-h3") bool preferH3, @JsonKey(name: "use-hosts") bool useHosts, @JsonKey(name: "use-system-hosts") bool useSystemHosts, @JsonKey(name: "respect-rules") bool respectRules, bool ipv6, @JsonKey(name: "default-nameserver") List defaultNameserver, @JsonKey(name: "enhanced-mode") DnsMode enhancedMode, @JsonKey(name: "fake-ip-range") String fakeIpRange, @JsonKey(name: "fake-ip-filter") List fakeIpFilter, @JsonKey(name: "nameserver-policy") Map nameserverPolicy, List nameserver, List fallback, @JsonKey(name: "proxy-server-nameserver") List proxyServerNameserver, @JsonKey(name: "fallback-filter") FallbackFilter fallbackFilter}); $FallbackFilterCopyWith<$Res> get fallbackFilter; } /// @nodoc class _$DnsCopyWithImpl<$Res, $Val extends Dns> implements $DnsCopyWith<$Res> { _$DnsCopyWithImpl(this._value, this._then); // ignore: unused_field final $Val _value; // ignore: unused_field final $Res Function($Val) _then; /// Create a copy of Dns /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? enable = null, Object? listen = null, Object? preferH3 = null, Object? useHosts = null, Object? useSystemHosts = null, Object? respectRules = null, Object? ipv6 = null, Object? defaultNameserver = null, Object? enhancedMode = null, Object? fakeIpRange = null, Object? fakeIpFilter = null, Object? nameserverPolicy = null, Object? nameserver = null, Object? fallback = null, Object? proxyServerNameserver = null, Object? fallbackFilter = null, }) { return _then(_value.copyWith( enable: null == enable ? _value.enable : enable // ignore: cast_nullable_to_non_nullable as bool, listen: null == listen ? _value.listen : listen // ignore: cast_nullable_to_non_nullable as String, preferH3: null == preferH3 ? _value.preferH3 : preferH3 // ignore: cast_nullable_to_non_nullable as bool, useHosts: null == useHosts ? _value.useHosts : useHosts // ignore: cast_nullable_to_non_nullable as bool, useSystemHosts: null == useSystemHosts ? _value.useSystemHosts : useSystemHosts // ignore: cast_nullable_to_non_nullable as bool, respectRules: null == respectRules ? _value.respectRules : respectRules // ignore: cast_nullable_to_non_nullable as bool, ipv6: null == ipv6 ? _value.ipv6 : ipv6 // ignore: cast_nullable_to_non_nullable as bool, defaultNameserver: null == defaultNameserver ? _value.defaultNameserver : defaultNameserver // ignore: cast_nullable_to_non_nullable as List, enhancedMode: null == enhancedMode ? _value.enhancedMode : enhancedMode // ignore: cast_nullable_to_non_nullable as DnsMode, fakeIpRange: null == fakeIpRange ? _value.fakeIpRange : fakeIpRange // ignore: cast_nullable_to_non_nullable as String, fakeIpFilter: null == fakeIpFilter ? _value.fakeIpFilter : fakeIpFilter // ignore: cast_nullable_to_non_nullable as List, nameserverPolicy: null == nameserverPolicy ? _value.nameserverPolicy : nameserverPolicy // ignore: cast_nullable_to_non_nullable as Map, nameserver: null == nameserver ? _value.nameserver : nameserver // ignore: cast_nullable_to_non_nullable as List, fallback: null == fallback ? _value.fallback : fallback // ignore: cast_nullable_to_non_nullable as List, proxyServerNameserver: null == proxyServerNameserver ? _value.proxyServerNameserver : proxyServerNameserver // ignore: cast_nullable_to_non_nullable as List, fallbackFilter: null == fallbackFilter ? _value.fallbackFilter : fallbackFilter // ignore: cast_nullable_to_non_nullable as FallbackFilter, ) as $Val); } /// Create a copy of Dns /// with the given fields replaced by the non-null parameter values. @override @pragma('vm:prefer-inline') $FallbackFilterCopyWith<$Res> get fallbackFilter { return $FallbackFilterCopyWith<$Res>(_value.fallbackFilter, (value) { return _then(_value.copyWith(fallbackFilter: value) as $Val); }); } } /// @nodoc abstract class _$$DnsImplCopyWith<$Res> implements $DnsCopyWith<$Res> { factory _$$DnsImplCopyWith(_$DnsImpl value, $Res Function(_$DnsImpl) then) = __$$DnsImplCopyWithImpl<$Res>; @override @useResult $Res call( {bool enable, String listen, @JsonKey(name: "prefer-h3") bool preferH3, @JsonKey(name: "use-hosts") bool useHosts, @JsonKey(name: "use-system-hosts") bool useSystemHosts, @JsonKey(name: "respect-rules") bool respectRules, bool ipv6, @JsonKey(name: "default-nameserver") List defaultNameserver, @JsonKey(name: "enhanced-mode") DnsMode enhancedMode, @JsonKey(name: "fake-ip-range") String fakeIpRange, @JsonKey(name: "fake-ip-filter") List fakeIpFilter, @JsonKey(name: "nameserver-policy") Map nameserverPolicy, List nameserver, List fallback, @JsonKey(name: "proxy-server-nameserver") List proxyServerNameserver, @JsonKey(name: "fallback-filter") FallbackFilter fallbackFilter}); @override $FallbackFilterCopyWith<$Res> get fallbackFilter; } /// @nodoc class __$$DnsImplCopyWithImpl<$Res> extends _$DnsCopyWithImpl<$Res, _$DnsImpl> implements _$$DnsImplCopyWith<$Res> { __$$DnsImplCopyWithImpl(_$DnsImpl _value, $Res Function(_$DnsImpl) _then) : super(_value, _then); /// Create a copy of Dns /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? enable = null, Object? listen = null, Object? preferH3 = null, Object? useHosts = null, Object? useSystemHosts = null, Object? respectRules = null, Object? ipv6 = null, Object? defaultNameserver = null, Object? enhancedMode = null, Object? fakeIpRange = null, Object? fakeIpFilter = null, Object? nameserverPolicy = null, Object? nameserver = null, Object? fallback = null, Object? proxyServerNameserver = null, Object? fallbackFilter = null, }) { return _then(_$DnsImpl( enable: null == enable ? _value.enable : enable // ignore: cast_nullable_to_non_nullable as bool, listen: null == listen ? _value.listen : listen // ignore: cast_nullable_to_non_nullable as String, preferH3: null == preferH3 ? _value.preferH3 : preferH3 // ignore: cast_nullable_to_non_nullable as bool, useHosts: null == useHosts ? _value.useHosts : useHosts // ignore: cast_nullable_to_non_nullable as bool, useSystemHosts: null == useSystemHosts ? _value.useSystemHosts : useSystemHosts // ignore: cast_nullable_to_non_nullable as bool, respectRules: null == respectRules ? _value.respectRules : respectRules // ignore: cast_nullable_to_non_nullable as bool, ipv6: null == ipv6 ? _value.ipv6 : ipv6 // ignore: cast_nullable_to_non_nullable as bool, defaultNameserver: null == defaultNameserver ? _value._defaultNameserver : defaultNameserver // ignore: cast_nullable_to_non_nullable as List, enhancedMode: null == enhancedMode ? _value.enhancedMode : enhancedMode // ignore: cast_nullable_to_non_nullable as DnsMode, fakeIpRange: null == fakeIpRange ? _value.fakeIpRange : fakeIpRange // ignore: cast_nullable_to_non_nullable as String, fakeIpFilter: null == fakeIpFilter ? _value._fakeIpFilter : fakeIpFilter // ignore: cast_nullable_to_non_nullable as List, nameserverPolicy: null == nameserverPolicy ? _value._nameserverPolicy : nameserverPolicy // ignore: cast_nullable_to_non_nullable as Map, nameserver: null == nameserver ? _value._nameserver : nameserver // ignore: cast_nullable_to_non_nullable as List, fallback: null == fallback ? _value._fallback : fallback // ignore: cast_nullable_to_non_nullable as List, proxyServerNameserver: null == proxyServerNameserver ? _value._proxyServerNameserver : proxyServerNameserver // ignore: cast_nullable_to_non_nullable as List, fallbackFilter: null == fallbackFilter ? _value.fallbackFilter : fallbackFilter // ignore: cast_nullable_to_non_nullable as FallbackFilter, )); } } /// @nodoc @JsonSerializable() class _$DnsImpl implements _Dns { const _$DnsImpl( {this.enable = true, this.listen = "0.0.0.0:1053", @JsonKey(name: "prefer-h3") this.preferH3 = false, @JsonKey(name: "use-hosts") this.useHosts = true, @JsonKey(name: "use-system-hosts") this.useSystemHosts = true, @JsonKey(name: "respect-rules") this.respectRules = false, this.ipv6 = false, @JsonKey(name: "default-nameserver") final List defaultNameserver = const ["223.5.5.5"], @JsonKey(name: "enhanced-mode") this.enhancedMode = DnsMode.fakeIp, @JsonKey(name: "fake-ip-range") this.fakeIpRange = "198.18.0.1/16", @JsonKey(name: "fake-ip-filter") final List fakeIpFilter = const [ "*.lan", "localhost.ptlogin2.qq.com" ], @JsonKey(name: "nameserver-policy") final Map nameserverPolicy = const { "www.baidu.com": "114.114.114.114", "+.internal.crop.com": "10.0.0.1", "geosite:cn": "https://doh.pub/dns-query" }, final List nameserver = const [ "https://doh.pub/dns-query", "https://dns.alidns.com/dns-query" ], final List fallback = const ["tls://8.8.4.4", "tls://1.1.1.1"], @JsonKey(name: "proxy-server-nameserver") final List proxyServerNameserver = const [ "https://doh.pub/dns-query" ], @JsonKey(name: "fallback-filter") this.fallbackFilter = const FallbackFilter()}) : _defaultNameserver = defaultNameserver, _fakeIpFilter = fakeIpFilter, _nameserverPolicy = nameserverPolicy, _nameserver = nameserver, _fallback = fallback, _proxyServerNameserver = proxyServerNameserver; factory _$DnsImpl.fromJson(Map json) => _$$DnsImplFromJson(json); @override @JsonKey() final bool enable; @override @JsonKey() final String listen; @override @JsonKey(name: "prefer-h3") final bool preferH3; @override @JsonKey(name: "use-hosts") final bool useHosts; @override @JsonKey(name: "use-system-hosts") final bool useSystemHosts; @override @JsonKey(name: "respect-rules") final bool respectRules; @override @JsonKey() final bool ipv6; final List _defaultNameserver; @override @JsonKey(name: "default-nameserver") List get defaultNameserver { if (_defaultNameserver is EqualUnmodifiableListView) return _defaultNameserver; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_defaultNameserver); } @override @JsonKey(name: "enhanced-mode") final DnsMode enhancedMode; @override @JsonKey(name: "fake-ip-range") final String fakeIpRange; final List _fakeIpFilter; @override @JsonKey(name: "fake-ip-filter") List get fakeIpFilter { if (_fakeIpFilter is EqualUnmodifiableListView) return _fakeIpFilter; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_fakeIpFilter); } final Map _nameserverPolicy; @override @JsonKey(name: "nameserver-policy") Map get nameserverPolicy { if (_nameserverPolicy is EqualUnmodifiableMapView) return _nameserverPolicy; // ignore: implicit_dynamic_type return EqualUnmodifiableMapView(_nameserverPolicy); } final List _nameserver; @override @JsonKey() List get nameserver { if (_nameserver is EqualUnmodifiableListView) return _nameserver; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_nameserver); } final List _fallback; @override @JsonKey() List get fallback { if (_fallback is EqualUnmodifiableListView) return _fallback; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_fallback); } final List _proxyServerNameserver; @override @JsonKey(name: "proxy-server-nameserver") List get proxyServerNameserver { if (_proxyServerNameserver is EqualUnmodifiableListView) return _proxyServerNameserver; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_proxyServerNameserver); } @override @JsonKey(name: "fallback-filter") final FallbackFilter fallbackFilter; @override String toString() { return 'Dns(enable: $enable, listen: $listen, preferH3: $preferH3, useHosts: $useHosts, useSystemHosts: $useSystemHosts, respectRules: $respectRules, ipv6: $ipv6, defaultNameserver: $defaultNameserver, enhancedMode: $enhancedMode, fakeIpRange: $fakeIpRange, fakeIpFilter: $fakeIpFilter, nameserverPolicy: $nameserverPolicy, nameserver: $nameserver, fallback: $fallback, proxyServerNameserver: $proxyServerNameserver, fallbackFilter: $fallbackFilter)'; } @override bool operator ==(Object other) { return identical(this, other) || (other.runtimeType == runtimeType && other is _$DnsImpl && (identical(other.enable, enable) || other.enable == enable) && (identical(other.listen, listen) || other.listen == listen) && (identical(other.preferH3, preferH3) || other.preferH3 == preferH3) && (identical(other.useHosts, useHosts) || other.useHosts == useHosts) && (identical(other.useSystemHosts, useSystemHosts) || other.useSystemHosts == useSystemHosts) && (identical(other.respectRules, respectRules) || other.respectRules == respectRules) && (identical(other.ipv6, ipv6) || other.ipv6 == ipv6) && const DeepCollectionEquality() .equals(other._defaultNameserver, _defaultNameserver) && (identical(other.enhancedMode, enhancedMode) || other.enhancedMode == enhancedMode) && (identical(other.fakeIpRange, fakeIpRange) || other.fakeIpRange == fakeIpRange) && const DeepCollectionEquality() .equals(other._fakeIpFilter, _fakeIpFilter) && const DeepCollectionEquality() .equals(other._nameserverPolicy, _nameserverPolicy) && const DeepCollectionEquality() .equals(other._nameserver, _nameserver) && const DeepCollectionEquality().equals(other._fallback, _fallback) && const DeepCollectionEquality() .equals(other._proxyServerNameserver, _proxyServerNameserver) && (identical(other.fallbackFilter, fallbackFilter) || other.fallbackFilter == fallbackFilter)); } @JsonKey(includeFromJson: false, includeToJson: false) @override int get hashCode => Object.hash( runtimeType, enable, listen, preferH3, useHosts, useSystemHosts, respectRules, ipv6, const DeepCollectionEquality().hash(_defaultNameserver), enhancedMode, fakeIpRange, const DeepCollectionEquality().hash(_fakeIpFilter), const DeepCollectionEquality().hash(_nameserverPolicy), const DeepCollectionEquality().hash(_nameserver), const DeepCollectionEquality().hash(_fallback), const DeepCollectionEquality().hash(_proxyServerNameserver), fallbackFilter); /// Create a copy of Dns /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) @override @pragma('vm:prefer-inline') _$$DnsImplCopyWith<_$DnsImpl> get copyWith => __$$DnsImplCopyWithImpl<_$DnsImpl>(this, _$identity); @override Map toJson() { return _$$DnsImplToJson( this, ); } } abstract class _Dns implements Dns { const factory _Dns( {final bool enable, final String listen, @JsonKey(name: "prefer-h3") final bool preferH3, @JsonKey(name: "use-hosts") final bool useHosts, @JsonKey(name: "use-system-hosts") final bool useSystemHosts, @JsonKey(name: "respect-rules") final bool respectRules, final bool ipv6, @JsonKey(name: "default-nameserver") final List defaultNameserver, @JsonKey(name: "enhanced-mode") final DnsMode enhancedMode, @JsonKey(name: "fake-ip-range") final String fakeIpRange, @JsonKey(name: "fake-ip-filter") final List fakeIpFilter, @JsonKey(name: "nameserver-policy") final Map nameserverPolicy, final List nameserver, final List fallback, @JsonKey(name: "proxy-server-nameserver") final List proxyServerNameserver, @JsonKey(name: "fallback-filter") final FallbackFilter fallbackFilter}) = _$DnsImpl; factory _Dns.fromJson(Map json) = _$DnsImpl.fromJson; @override bool get enable; @override String get listen; @override @JsonKey(name: "prefer-h3") bool get preferH3; @override @JsonKey(name: "use-hosts") bool get useHosts; @override @JsonKey(name: "use-system-hosts") bool get useSystemHosts; @override @JsonKey(name: "respect-rules") bool get respectRules; @override bool get ipv6; @override @JsonKey(name: "default-nameserver") List get defaultNameserver; @override @JsonKey(name: "enhanced-mode") DnsMode get enhancedMode; @override @JsonKey(name: "fake-ip-range") String get fakeIpRange; @override @JsonKey(name: "fake-ip-filter") List get fakeIpFilter; @override @JsonKey(name: "nameserver-policy") Map get nameserverPolicy; @override List get nameserver; @override List get fallback; @override @JsonKey(name: "proxy-server-nameserver") List get proxyServerNameserver; @override @JsonKey(name: "fallback-filter") FallbackFilter get fallbackFilter; /// Create a copy of Dns /// with the given fields replaced by the non-null parameter values. @override @JsonKey(includeFromJson: false, includeToJson: false) _$$DnsImplCopyWith<_$DnsImpl> get copyWith => throw _privateConstructorUsedError; } GeoXUrl _$GeoXUrlFromJson(Map json) { return _GeoXUrl.fromJson(json); } /// @nodoc mixin _$GeoXUrl { String get mmdb => throw _privateConstructorUsedError; String get asn => throw _privateConstructorUsedError; String get geoip => throw _privateConstructorUsedError; String get geosite => throw _privateConstructorUsedError; /// Serializes this GeoXUrl to a JSON map. Map toJson() => throw _privateConstructorUsedError; /// Create a copy of GeoXUrl /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) $GeoXUrlCopyWith get copyWith => throw _privateConstructorUsedError; } /// @nodoc abstract class $GeoXUrlCopyWith<$Res> { factory $GeoXUrlCopyWith(GeoXUrl value, $Res Function(GeoXUrl) then) = _$GeoXUrlCopyWithImpl<$Res, GeoXUrl>; @useResult $Res call({String mmdb, String asn, String geoip, String geosite}); } /// @nodoc class _$GeoXUrlCopyWithImpl<$Res, $Val extends GeoXUrl> implements $GeoXUrlCopyWith<$Res> { _$GeoXUrlCopyWithImpl(this._value, this._then); // ignore: unused_field final $Val _value; // ignore: unused_field final $Res Function($Val) _then; /// Create a copy of GeoXUrl /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? mmdb = null, Object? asn = null, Object? geoip = null, Object? geosite = null, }) { return _then(_value.copyWith( mmdb: null == mmdb ? _value.mmdb : mmdb // ignore: cast_nullable_to_non_nullable as String, asn: null == asn ? _value.asn : asn // ignore: cast_nullable_to_non_nullable as String, geoip: null == geoip ? _value.geoip : geoip // ignore: cast_nullable_to_non_nullable as String, geosite: null == geosite ? _value.geosite : geosite // ignore: cast_nullable_to_non_nullable as String, ) as $Val); } } /// @nodoc abstract class _$$GeoXUrlImplCopyWith<$Res> implements $GeoXUrlCopyWith<$Res> { factory _$$GeoXUrlImplCopyWith( _$GeoXUrlImpl value, $Res Function(_$GeoXUrlImpl) then) = __$$GeoXUrlImplCopyWithImpl<$Res>; @override @useResult $Res call({String mmdb, String asn, String geoip, String geosite}); } /// @nodoc class __$$GeoXUrlImplCopyWithImpl<$Res> extends _$GeoXUrlCopyWithImpl<$Res, _$GeoXUrlImpl> implements _$$GeoXUrlImplCopyWith<$Res> { __$$GeoXUrlImplCopyWithImpl( _$GeoXUrlImpl _value, $Res Function(_$GeoXUrlImpl) _then) : super(_value, _then); /// Create a copy of GeoXUrl /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? mmdb = null, Object? asn = null, Object? geoip = null, Object? geosite = null, }) { return _then(_$GeoXUrlImpl( mmdb: null == mmdb ? _value.mmdb : mmdb // ignore: cast_nullable_to_non_nullable as String, asn: null == asn ? _value.asn : asn // ignore: cast_nullable_to_non_nullable as String, geoip: null == geoip ? _value.geoip : geoip // ignore: cast_nullable_to_non_nullable as String, geosite: null == geosite ? _value.geosite : geosite // ignore: cast_nullable_to_non_nullable as String, )); } } /// @nodoc @JsonSerializable() class _$GeoXUrlImpl implements _GeoXUrl { const _$GeoXUrlImpl( {this.mmdb = "https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geoip.metadb", this.asn = "https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/GeoLite2-ASN.mmdb", this.geoip = "https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geoip.dat", this.geosite = "https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geosite.dat"}); factory _$GeoXUrlImpl.fromJson(Map json) => _$$GeoXUrlImplFromJson(json); @override @JsonKey() final String mmdb; @override @JsonKey() final String asn; @override @JsonKey() final String geoip; @override @JsonKey() final String geosite; @override String toString() { return 'GeoXUrl(mmdb: $mmdb, asn: $asn, geoip: $geoip, geosite: $geosite)'; } @override bool operator ==(Object other) { return identical(this, other) || (other.runtimeType == runtimeType && other is _$GeoXUrlImpl && (identical(other.mmdb, mmdb) || other.mmdb == mmdb) && (identical(other.asn, asn) || other.asn == asn) && (identical(other.geoip, geoip) || other.geoip == geoip) && (identical(other.geosite, geosite) || other.geosite == geosite)); } @JsonKey(includeFromJson: false, includeToJson: false) @override int get hashCode => Object.hash(runtimeType, mmdb, asn, geoip, geosite); /// Create a copy of GeoXUrl /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) @override @pragma('vm:prefer-inline') _$$GeoXUrlImplCopyWith<_$GeoXUrlImpl> get copyWith => __$$GeoXUrlImplCopyWithImpl<_$GeoXUrlImpl>(this, _$identity); @override Map toJson() { return _$$GeoXUrlImplToJson( this, ); } } abstract class _GeoXUrl implements GeoXUrl { const factory _GeoXUrl( {final String mmdb, final String asn, final String geoip, final String geosite}) = _$GeoXUrlImpl; factory _GeoXUrl.fromJson(Map json) = _$GeoXUrlImpl.fromJson; @override String get mmdb; @override String get asn; @override String get geoip; @override String get geosite; /// Create a copy of GeoXUrl /// with the given fields replaced by the non-null parameter values. @override @JsonKey(includeFromJson: false, includeToJson: false) _$$GeoXUrlImplCopyWith<_$GeoXUrlImpl> get copyWith => throw _privateConstructorUsedError; } /// @nodoc mixin _$ParsedRule { RuleAction get ruleAction => throw _privateConstructorUsedError; String? get content => throw _privateConstructorUsedError; String? get ruleTarget => throw _privateConstructorUsedError; String? get ruleProvider => throw _privateConstructorUsedError; String? get subRule => throw _privateConstructorUsedError; bool get noResolve => throw _privateConstructorUsedError; bool get src => throw _privateConstructorUsedError; /// Create a copy of ParsedRule /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) $ParsedRuleCopyWith get copyWith => throw _privateConstructorUsedError; } /// @nodoc abstract class $ParsedRuleCopyWith<$Res> { factory $ParsedRuleCopyWith( ParsedRule value, $Res Function(ParsedRule) then) = _$ParsedRuleCopyWithImpl<$Res, ParsedRule>; @useResult $Res call( {RuleAction ruleAction, String? content, String? ruleTarget, String? ruleProvider, String? subRule, bool noResolve, bool src}); } /// @nodoc class _$ParsedRuleCopyWithImpl<$Res, $Val extends ParsedRule> implements $ParsedRuleCopyWith<$Res> { _$ParsedRuleCopyWithImpl(this._value, this._then); // ignore: unused_field final $Val _value; // ignore: unused_field final $Res Function($Val) _then; /// Create a copy of ParsedRule /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? ruleAction = null, Object? content = freezed, Object? ruleTarget = freezed, Object? ruleProvider = freezed, Object? subRule = freezed, Object? noResolve = null, Object? src = null, }) { return _then(_value.copyWith( ruleAction: null == ruleAction ? _value.ruleAction : ruleAction // ignore: cast_nullable_to_non_nullable as RuleAction, content: freezed == content ? _value.content : content // ignore: cast_nullable_to_non_nullable as String?, ruleTarget: freezed == ruleTarget ? _value.ruleTarget : ruleTarget // ignore: cast_nullable_to_non_nullable as String?, ruleProvider: freezed == ruleProvider ? _value.ruleProvider : ruleProvider // ignore: cast_nullable_to_non_nullable as String?, subRule: freezed == subRule ? _value.subRule : subRule // ignore: cast_nullable_to_non_nullable as String?, noResolve: null == noResolve ? _value.noResolve : noResolve // ignore: cast_nullable_to_non_nullable as bool, src: null == src ? _value.src : src // ignore: cast_nullable_to_non_nullable as bool, ) as $Val); } } /// @nodoc abstract class _$$ParsedRuleImplCopyWith<$Res> implements $ParsedRuleCopyWith<$Res> { factory _$$ParsedRuleImplCopyWith( _$ParsedRuleImpl value, $Res Function(_$ParsedRuleImpl) then) = __$$ParsedRuleImplCopyWithImpl<$Res>; @override @useResult $Res call( {RuleAction ruleAction, String? content, String? ruleTarget, String? ruleProvider, String? subRule, bool noResolve, bool src}); } /// @nodoc class __$$ParsedRuleImplCopyWithImpl<$Res> extends _$ParsedRuleCopyWithImpl<$Res, _$ParsedRuleImpl> implements _$$ParsedRuleImplCopyWith<$Res> { __$$ParsedRuleImplCopyWithImpl( _$ParsedRuleImpl _value, $Res Function(_$ParsedRuleImpl) _then) : super(_value, _then); /// Create a copy of ParsedRule /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? ruleAction = null, Object? content = freezed, Object? ruleTarget = freezed, Object? ruleProvider = freezed, Object? subRule = freezed, Object? noResolve = null, Object? src = null, }) { return _then(_$ParsedRuleImpl( ruleAction: null == ruleAction ? _value.ruleAction : ruleAction // ignore: cast_nullable_to_non_nullable as RuleAction, content: freezed == content ? _value.content : content // ignore: cast_nullable_to_non_nullable as String?, ruleTarget: freezed == ruleTarget ? _value.ruleTarget : ruleTarget // ignore: cast_nullable_to_non_nullable as String?, ruleProvider: freezed == ruleProvider ? _value.ruleProvider : ruleProvider // ignore: cast_nullable_to_non_nullable as String?, subRule: freezed == subRule ? _value.subRule : subRule // ignore: cast_nullable_to_non_nullable as String?, noResolve: null == noResolve ? _value.noResolve : noResolve // ignore: cast_nullable_to_non_nullable as bool, src: null == src ? _value.src : src // ignore: cast_nullable_to_non_nullable as bool, )); } } /// @nodoc class _$ParsedRuleImpl implements _ParsedRule { const _$ParsedRuleImpl( {required this.ruleAction, this.content, this.ruleTarget, this.ruleProvider, this.subRule, this.noResolve = false, this.src = false}); @override final RuleAction ruleAction; @override final String? content; @override final String? ruleTarget; @override final String? ruleProvider; @override final String? subRule; @override @JsonKey() final bool noResolve; @override @JsonKey() final bool src; @override String toString() { return 'ParsedRule(ruleAction: $ruleAction, content: $content, ruleTarget: $ruleTarget, ruleProvider: $ruleProvider, subRule: $subRule, noResolve: $noResolve, src: $src)'; } @override bool operator ==(Object other) { return identical(this, other) || (other.runtimeType == runtimeType && other is _$ParsedRuleImpl && (identical(other.ruleAction, ruleAction) || other.ruleAction == ruleAction) && (identical(other.content, content) || other.content == content) && (identical(other.ruleTarget, ruleTarget) || other.ruleTarget == ruleTarget) && (identical(other.ruleProvider, ruleProvider) || other.ruleProvider == ruleProvider) && (identical(other.subRule, subRule) || other.subRule == subRule) && (identical(other.noResolve, noResolve) || other.noResolve == noResolve) && (identical(other.src, src) || other.src == src)); } @override int get hashCode => Object.hash(runtimeType, ruleAction, content, ruleTarget, ruleProvider, subRule, noResolve, src); /// Create a copy of ParsedRule /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) @override @pragma('vm:prefer-inline') _$$ParsedRuleImplCopyWith<_$ParsedRuleImpl> get copyWith => __$$ParsedRuleImplCopyWithImpl<_$ParsedRuleImpl>(this, _$identity); } abstract class _ParsedRule implements ParsedRule { const factory _ParsedRule( {required final RuleAction ruleAction, final String? content, final String? ruleTarget, final String? ruleProvider, final String? subRule, final bool noResolve, final bool src}) = _$ParsedRuleImpl; @override RuleAction get ruleAction; @override String? get content; @override String? get ruleTarget; @override String? get ruleProvider; @override String? get subRule; @override bool get noResolve; @override bool get src; /// Create a copy of ParsedRule /// with the given fields replaced by the non-null parameter values. @override @JsonKey(includeFromJson: false, includeToJson: false) _$$ParsedRuleImplCopyWith<_$ParsedRuleImpl> get copyWith => throw _privateConstructorUsedError; } Rule _$RuleFromJson(Map json) { return _Rule.fromJson(json); } /// @nodoc mixin _$Rule { String get id => throw _privateConstructorUsedError; String get value => throw _privateConstructorUsedError; /// Serializes this Rule to a JSON map. Map toJson() => throw _privateConstructorUsedError; /// Create a copy of Rule /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) $RuleCopyWith get copyWith => throw _privateConstructorUsedError; } /// @nodoc abstract class $RuleCopyWith<$Res> { factory $RuleCopyWith(Rule value, $Res Function(Rule) then) = _$RuleCopyWithImpl<$Res, Rule>; @useResult $Res call({String id, String value}); } /// @nodoc class _$RuleCopyWithImpl<$Res, $Val extends Rule> implements $RuleCopyWith<$Res> { _$RuleCopyWithImpl(this._value, this._then); // ignore: unused_field final $Val _value; // ignore: unused_field final $Res Function($Val) _then; /// Create a copy of Rule /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? id = null, Object? value = null, }) { return _then(_value.copyWith( id: null == id ? _value.id : id // ignore: cast_nullable_to_non_nullable as String, value: null == value ? _value.value : value // ignore: cast_nullable_to_non_nullable as String, ) as $Val); } } /// @nodoc abstract class _$$RuleImplCopyWith<$Res> implements $RuleCopyWith<$Res> { factory _$$RuleImplCopyWith( _$RuleImpl value, $Res Function(_$RuleImpl) then) = __$$RuleImplCopyWithImpl<$Res>; @override @useResult $Res call({String id, String value}); } /// @nodoc class __$$RuleImplCopyWithImpl<$Res> extends _$RuleCopyWithImpl<$Res, _$RuleImpl> implements _$$RuleImplCopyWith<$Res> { __$$RuleImplCopyWithImpl(_$RuleImpl _value, $Res Function(_$RuleImpl) _then) : super(_value, _then); /// Create a copy of Rule /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? id = null, Object? value = null, }) { return _then(_$RuleImpl( id: null == id ? _value.id : id // ignore: cast_nullable_to_non_nullable as String, value: null == value ? _value.value : value // ignore: cast_nullable_to_non_nullable as String, )); } } /// @nodoc @JsonSerializable() class _$RuleImpl implements _Rule { const _$RuleImpl({required this.id, required this.value}); factory _$RuleImpl.fromJson(Map json) => _$$RuleImplFromJson(json); @override final String id; @override final String value; @override String toString() { return 'Rule(id: $id, value: $value)'; } @override bool operator ==(Object other) { return identical(this, other) || (other.runtimeType == runtimeType && other is _$RuleImpl && (identical(other.id, id) || other.id == id) && (identical(other.value, value) || other.value == value)); } @JsonKey(includeFromJson: false, includeToJson: false) @override int get hashCode => Object.hash(runtimeType, id, value); /// Create a copy of Rule /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) @override @pragma('vm:prefer-inline') _$$RuleImplCopyWith<_$RuleImpl> get copyWith => __$$RuleImplCopyWithImpl<_$RuleImpl>(this, _$identity); @override Map toJson() { return _$$RuleImplToJson( this, ); } } abstract class _Rule implements Rule { const factory _Rule({required final String id, required final String value}) = _$RuleImpl; factory _Rule.fromJson(Map json) = _$RuleImpl.fromJson; @override String get id; @override String get value; /// Create a copy of Rule /// with the given fields replaced by the non-null parameter values. @override @JsonKey(includeFromJson: false, includeToJson: false) _$$RuleImplCopyWith<_$RuleImpl> get copyWith => throw _privateConstructorUsedError; } SubRule _$SubRuleFromJson(Map json) { return _SubRule.fromJson(json); } /// @nodoc mixin _$SubRule { String get name => throw _privateConstructorUsedError; /// Serializes this SubRule to a JSON map. Map toJson() => throw _privateConstructorUsedError; /// Create a copy of SubRule /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) $SubRuleCopyWith get copyWith => throw _privateConstructorUsedError; } /// @nodoc abstract class $SubRuleCopyWith<$Res> { factory $SubRuleCopyWith(SubRule value, $Res Function(SubRule) then) = _$SubRuleCopyWithImpl<$Res, SubRule>; @useResult $Res call({String name}); } /// @nodoc class _$SubRuleCopyWithImpl<$Res, $Val extends SubRule> implements $SubRuleCopyWith<$Res> { _$SubRuleCopyWithImpl(this._value, this._then); // ignore: unused_field final $Val _value; // ignore: unused_field final $Res Function($Val) _then; /// Create a copy of SubRule /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? name = null, }) { return _then(_value.copyWith( name: null == name ? _value.name : name // ignore: cast_nullable_to_non_nullable as String, ) as $Val); } } /// @nodoc abstract class _$$SubRuleImplCopyWith<$Res> implements $SubRuleCopyWith<$Res> { factory _$$SubRuleImplCopyWith( _$SubRuleImpl value, $Res Function(_$SubRuleImpl) then) = __$$SubRuleImplCopyWithImpl<$Res>; @override @useResult $Res call({String name}); } /// @nodoc class __$$SubRuleImplCopyWithImpl<$Res> extends _$SubRuleCopyWithImpl<$Res, _$SubRuleImpl> implements _$$SubRuleImplCopyWith<$Res> { __$$SubRuleImplCopyWithImpl( _$SubRuleImpl _value, $Res Function(_$SubRuleImpl) _then) : super(_value, _then); /// Create a copy of SubRule /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? name = null, }) { return _then(_$SubRuleImpl( name: null == name ? _value.name : name // ignore: cast_nullable_to_non_nullable as String, )); } } /// @nodoc @JsonSerializable() class _$SubRuleImpl implements _SubRule { const _$SubRuleImpl({required this.name}); factory _$SubRuleImpl.fromJson(Map json) => _$$SubRuleImplFromJson(json); @override final String name; @override String toString() { return 'SubRule(name: $name)'; } @override bool operator ==(Object other) { return identical(this, other) || (other.runtimeType == runtimeType && other is _$SubRuleImpl && (identical(other.name, name) || other.name == name)); } @JsonKey(includeFromJson: false, includeToJson: false) @override int get hashCode => Object.hash(runtimeType, name); /// Create a copy of SubRule /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) @override @pragma('vm:prefer-inline') _$$SubRuleImplCopyWith<_$SubRuleImpl> get copyWith => __$$SubRuleImplCopyWithImpl<_$SubRuleImpl>(this, _$identity); @override Map toJson() { return _$$SubRuleImplToJson( this, ); } } abstract class _SubRule implements SubRule { const factory _SubRule({required final String name}) = _$SubRuleImpl; factory _SubRule.fromJson(Map json) = _$SubRuleImpl.fromJson; @override String get name; /// Create a copy of SubRule /// with the given fields replaced by the non-null parameter values. @override @JsonKey(includeFromJson: false, includeToJson: false) _$$SubRuleImplCopyWith<_$SubRuleImpl> get copyWith => throw _privateConstructorUsedError; } ClashConfigSnippet _$ClashConfigSnippetFromJson(Map json) { return _ClashConfigSnippet.fromJson(json); } /// @nodoc mixin _$ClashConfigSnippet { @JsonKey(name: "proxy-groups") List get proxyGroups => throw _privateConstructorUsedError; @JsonKey(fromJson: _genRule) List get rule => throw _privateConstructorUsedError; @JsonKey(name: "rule-providers", fromJson: _genRuleProviders) List get ruleProvider => throw _privateConstructorUsedError; @JsonKey(name: "sub-rules", fromJson: _genSubRules) List get subRules => throw _privateConstructorUsedError; /// Serializes this ClashConfigSnippet to a JSON map. Map toJson() => throw _privateConstructorUsedError; /// Create a copy of ClashConfigSnippet /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) $ClashConfigSnippetCopyWith get copyWith => throw _privateConstructorUsedError; } /// @nodoc abstract class $ClashConfigSnippetCopyWith<$Res> { factory $ClashConfigSnippetCopyWith( ClashConfigSnippet value, $Res Function(ClashConfigSnippet) then) = _$ClashConfigSnippetCopyWithImpl<$Res, ClashConfigSnippet>; @useResult $Res call( {@JsonKey(name: "proxy-groups") List proxyGroups, @JsonKey(fromJson: _genRule) List rule, @JsonKey(name: "rule-providers", fromJson: _genRuleProviders) List ruleProvider, @JsonKey(name: "sub-rules", fromJson: _genSubRules) List subRules}); } /// @nodoc class _$ClashConfigSnippetCopyWithImpl<$Res, $Val extends ClashConfigSnippet> implements $ClashConfigSnippetCopyWith<$Res> { _$ClashConfigSnippetCopyWithImpl(this._value, this._then); // ignore: unused_field final $Val _value; // ignore: unused_field final $Res Function($Val) _then; /// Create a copy of ClashConfigSnippet /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? proxyGroups = null, Object? rule = null, Object? ruleProvider = null, Object? subRules = null, }) { return _then(_value.copyWith( proxyGroups: null == proxyGroups ? _value.proxyGroups : proxyGroups // ignore: cast_nullable_to_non_nullable as List, rule: null == rule ? _value.rule : rule // ignore: cast_nullable_to_non_nullable as List, ruleProvider: null == ruleProvider ? _value.ruleProvider : ruleProvider // ignore: cast_nullable_to_non_nullable as List, subRules: null == subRules ? _value.subRules : subRules // ignore: cast_nullable_to_non_nullable as List, ) as $Val); } } /// @nodoc abstract class _$$ClashConfigSnippetImplCopyWith<$Res> implements $ClashConfigSnippetCopyWith<$Res> { factory _$$ClashConfigSnippetImplCopyWith(_$ClashConfigSnippetImpl value, $Res Function(_$ClashConfigSnippetImpl) then) = __$$ClashConfigSnippetImplCopyWithImpl<$Res>; @override @useResult $Res call( {@JsonKey(name: "proxy-groups") List proxyGroups, @JsonKey(fromJson: _genRule) List rule, @JsonKey(name: "rule-providers", fromJson: _genRuleProviders) List ruleProvider, @JsonKey(name: "sub-rules", fromJson: _genSubRules) List subRules}); } /// @nodoc class __$$ClashConfigSnippetImplCopyWithImpl<$Res> extends _$ClashConfigSnippetCopyWithImpl<$Res, _$ClashConfigSnippetImpl> implements _$$ClashConfigSnippetImplCopyWith<$Res> { __$$ClashConfigSnippetImplCopyWithImpl(_$ClashConfigSnippetImpl _value, $Res Function(_$ClashConfigSnippetImpl) _then) : super(_value, _then); /// Create a copy of ClashConfigSnippet /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? proxyGroups = null, Object? rule = null, Object? ruleProvider = null, Object? subRules = null, }) { return _then(_$ClashConfigSnippetImpl( proxyGroups: null == proxyGroups ? _value._proxyGroups : proxyGroups // ignore: cast_nullable_to_non_nullable as List, rule: null == rule ? _value._rule : rule // ignore: cast_nullable_to_non_nullable as List, ruleProvider: null == ruleProvider ? _value._ruleProvider : ruleProvider // ignore: cast_nullable_to_non_nullable as List, subRules: null == subRules ? _value._subRules : subRules // ignore: cast_nullable_to_non_nullable as List, )); } } /// @nodoc @JsonSerializable() class _$ClashConfigSnippetImpl implements _ClashConfigSnippet { const _$ClashConfigSnippetImpl( {@JsonKey(name: "proxy-groups") final List proxyGroups = const [], @JsonKey(fromJson: _genRule) final List rule = const [], @JsonKey(name: "rule-providers", fromJson: _genRuleProviders) final List ruleProvider = const [], @JsonKey(name: "sub-rules", fromJson: _genSubRules) final List subRules = const []}) : _proxyGroups = proxyGroups, _rule = rule, _ruleProvider = ruleProvider, _subRules = subRules; factory _$ClashConfigSnippetImpl.fromJson(Map json) => _$$ClashConfigSnippetImplFromJson(json); final List _proxyGroups; @override @JsonKey(name: "proxy-groups") List get proxyGroups { if (_proxyGroups is EqualUnmodifiableListView) return _proxyGroups; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_proxyGroups); } final List _rule; @override @JsonKey(fromJson: _genRule) List get rule { if (_rule is EqualUnmodifiableListView) return _rule; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_rule); } final List _ruleProvider; @override @JsonKey(name: "rule-providers", fromJson: _genRuleProviders) List get ruleProvider { if (_ruleProvider is EqualUnmodifiableListView) return _ruleProvider; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_ruleProvider); } final List _subRules; @override @JsonKey(name: "sub-rules", fromJson: _genSubRules) List get subRules { if (_subRules is EqualUnmodifiableListView) return _subRules; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_subRules); } @override String toString() { return 'ClashConfigSnippet(proxyGroups: $proxyGroups, rule: $rule, ruleProvider: $ruleProvider, subRules: $subRules)'; } @override bool operator ==(Object other) { return identical(this, other) || (other.runtimeType == runtimeType && other is _$ClashConfigSnippetImpl && const DeepCollectionEquality() .equals(other._proxyGroups, _proxyGroups) && const DeepCollectionEquality().equals(other._rule, _rule) && const DeepCollectionEquality() .equals(other._ruleProvider, _ruleProvider) && const DeepCollectionEquality().equals(other._subRules, _subRules)); } @JsonKey(includeFromJson: false, includeToJson: false) @override int get hashCode => Object.hash( runtimeType, const DeepCollectionEquality().hash(_proxyGroups), const DeepCollectionEquality().hash(_rule), const DeepCollectionEquality().hash(_ruleProvider), const DeepCollectionEquality().hash(_subRules)); /// Create a copy of ClashConfigSnippet /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) @override @pragma('vm:prefer-inline') _$$ClashConfigSnippetImplCopyWith<_$ClashConfigSnippetImpl> get copyWith => __$$ClashConfigSnippetImplCopyWithImpl<_$ClashConfigSnippetImpl>( this, _$identity); @override Map toJson() { return _$$ClashConfigSnippetImplToJson( this, ); } } abstract class _ClashConfigSnippet implements ClashConfigSnippet { const factory _ClashConfigSnippet( {@JsonKey(name: "proxy-groups") final List proxyGroups, @JsonKey(fromJson: _genRule) final List rule, @JsonKey(name: "rule-providers", fromJson: _genRuleProviders) final List ruleProvider, @JsonKey(name: "sub-rules", fromJson: _genSubRules) final List subRules}) = _$ClashConfigSnippetImpl; factory _ClashConfigSnippet.fromJson(Map json) = _$ClashConfigSnippetImpl.fromJson; @override @JsonKey(name: "proxy-groups") List get proxyGroups; @override @JsonKey(fromJson: _genRule) List get rule; @override @JsonKey(name: "rule-providers", fromJson: _genRuleProviders) List get ruleProvider; @override @JsonKey(name: "sub-rules", fromJson: _genSubRules) List get subRules; /// Create a copy of ClashConfigSnippet /// with the given fields replaced by the non-null parameter values. @override @JsonKey(includeFromJson: false, includeToJson: false) _$$ClashConfigSnippetImplCopyWith<_$ClashConfigSnippetImpl> get copyWith => throw _privateConstructorUsedError; } ClashConfig _$ClashConfigFromJson(Map json) { return _ClashConfig.fromJson(json); } /// @nodoc mixin _$ClashConfig { @JsonKey(name: "mixed-port") int get mixedPort => throw _privateConstructorUsedError; Mode get mode => throw _privateConstructorUsedError; @JsonKey(name: "allow-lan") bool get allowLan => throw _privateConstructorUsedError; @JsonKey(name: "log-level") LogLevel get logLevel => throw _privateConstructorUsedError; bool get ipv6 => throw _privateConstructorUsedError; @JsonKey(name: "find-process-mode", unknownEnumValue: FindProcessMode.always) FindProcessMode get findProcessMode => throw _privateConstructorUsedError; @JsonKey(name: "keep-alive-interval") int get keepAliveInterval => throw _privateConstructorUsedError; @JsonKey(name: "unified-delay") bool get unifiedDelay => throw _privateConstructorUsedError; @JsonKey(name: "tcp-concurrent") bool get tcpConcurrent => throw _privateConstructorUsedError; @JsonKey(fromJson: Tun.safeFormJson) Tun get tun => throw _privateConstructorUsedError; @JsonKey(fromJson: Dns.safeDnsFromJson) Dns get dns => throw _privateConstructorUsedError; @JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson) GeoXUrl get geoXUrl => throw _privateConstructorUsedError; @JsonKey(name: "geodata-loader") GeodataLoader get geodataLoader => throw _privateConstructorUsedError; @JsonKey(name: "proxy-groups") List get proxyGroups => throw _privateConstructorUsedError; List get rule => throw _privateConstructorUsedError; @JsonKey(name: "global-ua") String? get globalUa => throw _privateConstructorUsedError; @JsonKey(name: "external-controller") ExternalControllerStatus get externalController => throw _privateConstructorUsedError; Map get hosts => throw _privateConstructorUsedError; /// Serializes this ClashConfig to a JSON map. Map toJson() => throw _privateConstructorUsedError; /// Create a copy of ClashConfig /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) $ClashConfigCopyWith get copyWith => throw _privateConstructorUsedError; } /// @nodoc abstract class $ClashConfigCopyWith<$Res> { factory $ClashConfigCopyWith( ClashConfig value, $Res Function(ClashConfig) then) = _$ClashConfigCopyWithImpl<$Res, ClashConfig>; @useResult $Res call( {@JsonKey(name: "mixed-port") int mixedPort, Mode mode, @JsonKey(name: "allow-lan") bool allowLan, @JsonKey(name: "log-level") LogLevel logLevel, bool ipv6, @JsonKey( name: "find-process-mode", unknownEnumValue: FindProcessMode.always) FindProcessMode findProcessMode, @JsonKey(name: "keep-alive-interval") int keepAliveInterval, @JsonKey(name: "unified-delay") bool unifiedDelay, @JsonKey(name: "tcp-concurrent") bool tcpConcurrent, @JsonKey(fromJson: Tun.safeFormJson) Tun tun, @JsonKey(fromJson: Dns.safeDnsFromJson) Dns dns, @JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson) GeoXUrl geoXUrl, @JsonKey(name: "geodata-loader") GeodataLoader geodataLoader, @JsonKey(name: "proxy-groups") List proxyGroups, List rule, @JsonKey(name: "global-ua") String? globalUa, @JsonKey(name: "external-controller") ExternalControllerStatus externalController, Map hosts}); $TunCopyWith<$Res> get tun; $DnsCopyWith<$Res> get dns; $GeoXUrlCopyWith<$Res> get geoXUrl; } /// @nodoc class _$ClashConfigCopyWithImpl<$Res, $Val extends ClashConfig> implements $ClashConfigCopyWith<$Res> { _$ClashConfigCopyWithImpl(this._value, this._then); // ignore: unused_field final $Val _value; // ignore: unused_field final $Res Function($Val) _then; /// Create a copy of ClashConfig /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? mixedPort = null, Object? mode = null, Object? allowLan = null, Object? logLevel = null, Object? ipv6 = null, Object? findProcessMode = null, Object? keepAliveInterval = null, Object? unifiedDelay = null, Object? tcpConcurrent = null, Object? tun = null, Object? dns = null, Object? geoXUrl = null, Object? geodataLoader = null, Object? proxyGroups = null, Object? rule = null, Object? globalUa = freezed, Object? externalController = null, Object? hosts = null, }) { return _then(_value.copyWith( mixedPort: null == mixedPort ? _value.mixedPort : mixedPort // ignore: cast_nullable_to_non_nullable as int, mode: null == mode ? _value.mode : mode // ignore: cast_nullable_to_non_nullable as Mode, allowLan: null == allowLan ? _value.allowLan : allowLan // ignore: cast_nullable_to_non_nullable as bool, logLevel: null == logLevel ? _value.logLevel : logLevel // ignore: cast_nullable_to_non_nullable as LogLevel, ipv6: null == ipv6 ? _value.ipv6 : ipv6 // ignore: cast_nullable_to_non_nullable as bool, findProcessMode: null == findProcessMode ? _value.findProcessMode : findProcessMode // ignore: cast_nullable_to_non_nullable as FindProcessMode, keepAliveInterval: null == keepAliveInterval ? _value.keepAliveInterval : keepAliveInterval // ignore: cast_nullable_to_non_nullable as int, unifiedDelay: null == unifiedDelay ? _value.unifiedDelay : unifiedDelay // ignore: cast_nullable_to_non_nullable as bool, tcpConcurrent: null == tcpConcurrent ? _value.tcpConcurrent : tcpConcurrent // ignore: cast_nullable_to_non_nullable as bool, tun: null == tun ? _value.tun : tun // ignore: cast_nullable_to_non_nullable as Tun, dns: null == dns ? _value.dns : dns // ignore: cast_nullable_to_non_nullable as Dns, geoXUrl: null == geoXUrl ? _value.geoXUrl : geoXUrl // ignore: cast_nullable_to_non_nullable as GeoXUrl, geodataLoader: null == geodataLoader ? _value.geodataLoader : geodataLoader // ignore: cast_nullable_to_non_nullable as GeodataLoader, proxyGroups: null == proxyGroups ? _value.proxyGroups : proxyGroups // ignore: cast_nullable_to_non_nullable as List, rule: null == rule ? _value.rule : rule // ignore: cast_nullable_to_non_nullable as List, globalUa: freezed == globalUa ? _value.globalUa : globalUa // ignore: cast_nullable_to_non_nullable as String?, externalController: null == externalController ? _value.externalController : externalController // ignore: cast_nullable_to_non_nullable as ExternalControllerStatus, hosts: null == hosts ? _value.hosts : hosts // ignore: cast_nullable_to_non_nullable as Map, ) as $Val); } /// Create a copy of ClashConfig /// with the given fields replaced by the non-null parameter values. @override @pragma('vm:prefer-inline') $TunCopyWith<$Res> get tun { return $TunCopyWith<$Res>(_value.tun, (value) { return _then(_value.copyWith(tun: value) as $Val); }); } /// Create a copy of ClashConfig /// with the given fields replaced by the non-null parameter values. @override @pragma('vm:prefer-inline') $DnsCopyWith<$Res> get dns { return $DnsCopyWith<$Res>(_value.dns, (value) { return _then(_value.copyWith(dns: value) as $Val); }); } /// Create a copy of ClashConfig /// with the given fields replaced by the non-null parameter values. @override @pragma('vm:prefer-inline') $GeoXUrlCopyWith<$Res> get geoXUrl { return $GeoXUrlCopyWith<$Res>(_value.geoXUrl, (value) { return _then(_value.copyWith(geoXUrl: value) as $Val); }); } } /// @nodoc abstract class _$$ClashConfigImplCopyWith<$Res> implements $ClashConfigCopyWith<$Res> { factory _$$ClashConfigImplCopyWith( _$ClashConfigImpl value, $Res Function(_$ClashConfigImpl) then) = __$$ClashConfigImplCopyWithImpl<$Res>; @override @useResult $Res call( {@JsonKey(name: "mixed-port") int mixedPort, Mode mode, @JsonKey(name: "allow-lan") bool allowLan, @JsonKey(name: "log-level") LogLevel logLevel, bool ipv6, @JsonKey( name: "find-process-mode", unknownEnumValue: FindProcessMode.always) FindProcessMode findProcessMode, @JsonKey(name: "keep-alive-interval") int keepAliveInterval, @JsonKey(name: "unified-delay") bool unifiedDelay, @JsonKey(name: "tcp-concurrent") bool tcpConcurrent, @JsonKey(fromJson: Tun.safeFormJson) Tun tun, @JsonKey(fromJson: Dns.safeDnsFromJson) Dns dns, @JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson) GeoXUrl geoXUrl, @JsonKey(name: "geodata-loader") GeodataLoader geodataLoader, @JsonKey(name: "proxy-groups") List proxyGroups, List rule, @JsonKey(name: "global-ua") String? globalUa, @JsonKey(name: "external-controller") ExternalControllerStatus externalController, Map hosts}); @override $TunCopyWith<$Res> get tun; @override $DnsCopyWith<$Res> get dns; @override $GeoXUrlCopyWith<$Res> get geoXUrl; } /// @nodoc class __$$ClashConfigImplCopyWithImpl<$Res> extends _$ClashConfigCopyWithImpl<$Res, _$ClashConfigImpl> implements _$$ClashConfigImplCopyWith<$Res> { __$$ClashConfigImplCopyWithImpl( _$ClashConfigImpl _value, $Res Function(_$ClashConfigImpl) _then) : super(_value, _then); /// Create a copy of ClashConfig /// with the given fields replaced by the non-null parameter values. @pragma('vm:prefer-inline') @override $Res call({ Object? mixedPort = null, Object? mode = null, Object? allowLan = null, Object? logLevel = null, Object? ipv6 = null, Object? findProcessMode = null, Object? keepAliveInterval = null, Object? unifiedDelay = null, Object? tcpConcurrent = null, Object? tun = null, Object? dns = null, Object? geoXUrl = null, Object? geodataLoader = null, Object? proxyGroups = null, Object? rule = null, Object? globalUa = freezed, Object? externalController = null, Object? hosts = null, }) { return _then(_$ClashConfigImpl( mixedPort: null == mixedPort ? _value.mixedPort : mixedPort // ignore: cast_nullable_to_non_nullable as int, mode: null == mode ? _value.mode : mode // ignore: cast_nullable_to_non_nullable as Mode, allowLan: null == allowLan ? _value.allowLan : allowLan // ignore: cast_nullable_to_non_nullable as bool, logLevel: null == logLevel ? _value.logLevel : logLevel // ignore: cast_nullable_to_non_nullable as LogLevel, ipv6: null == ipv6 ? _value.ipv6 : ipv6 // ignore: cast_nullable_to_non_nullable as bool, findProcessMode: null == findProcessMode ? _value.findProcessMode : findProcessMode // ignore: cast_nullable_to_non_nullable as FindProcessMode, keepAliveInterval: null == keepAliveInterval ? _value.keepAliveInterval : keepAliveInterval // ignore: cast_nullable_to_non_nullable as int, unifiedDelay: null == unifiedDelay ? _value.unifiedDelay : unifiedDelay // ignore: cast_nullable_to_non_nullable as bool, tcpConcurrent: null == tcpConcurrent ? _value.tcpConcurrent : tcpConcurrent // ignore: cast_nullable_to_non_nullable as bool, tun: null == tun ? _value.tun : tun // ignore: cast_nullable_to_non_nullable as Tun, dns: null == dns ? _value.dns : dns // ignore: cast_nullable_to_non_nullable as Dns, geoXUrl: null == geoXUrl ? _value.geoXUrl : geoXUrl // ignore: cast_nullable_to_non_nullable as GeoXUrl, geodataLoader: null == geodataLoader ? _value.geodataLoader : geodataLoader // ignore: cast_nullable_to_non_nullable as GeodataLoader, proxyGroups: null == proxyGroups ? _value._proxyGroups : proxyGroups // ignore: cast_nullable_to_non_nullable as List, rule: null == rule ? _value._rule : rule // ignore: cast_nullable_to_non_nullable as List, globalUa: freezed == globalUa ? _value.globalUa : globalUa // ignore: cast_nullable_to_non_nullable as String?, externalController: null == externalController ? _value.externalController : externalController // ignore: cast_nullable_to_non_nullable as ExternalControllerStatus, hosts: null == hosts ? _value._hosts : hosts // ignore: cast_nullable_to_non_nullable as Map, )); } } /// @nodoc @JsonSerializable() class _$ClashConfigImpl implements _ClashConfig { const _$ClashConfigImpl( {@JsonKey(name: "mixed-port") this.mixedPort = defaultMixedPort, this.mode = Mode.rule, @JsonKey(name: "allow-lan") this.allowLan = false, @JsonKey(name: "log-level") this.logLevel = LogLevel.error, this.ipv6 = false, @JsonKey( name: "find-process-mode", unknownEnumValue: FindProcessMode.always) this.findProcessMode = FindProcessMode.off, @JsonKey(name: "keep-alive-interval") this.keepAliveInterval = defaultKeepAliveInterval, @JsonKey(name: "unified-delay") this.unifiedDelay = true, @JsonKey(name: "tcp-concurrent") this.tcpConcurrent = true, @JsonKey(fromJson: Tun.safeFormJson) this.tun = defaultTun, @JsonKey(fromJson: Dns.safeDnsFromJson) this.dns = defaultDns, @JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson) this.geoXUrl = defaultGeoXUrl, @JsonKey(name: "geodata-loader") this.geodataLoader = GeodataLoader.memconservative, @JsonKey(name: "proxy-groups") final List proxyGroups = const [], final List rule = const [], @JsonKey(name: "global-ua") this.globalUa, @JsonKey(name: "external-controller") this.externalController = ExternalControllerStatus.close, final Map hosts = const {}}) : _proxyGroups = proxyGroups, _rule = rule, _hosts = hosts; factory _$ClashConfigImpl.fromJson(Map json) => _$$ClashConfigImplFromJson(json); @override @JsonKey(name: "mixed-port") final int mixedPort; @override @JsonKey() final Mode mode; @override @JsonKey(name: "allow-lan") final bool allowLan; @override @JsonKey(name: "log-level") final LogLevel logLevel; @override @JsonKey() final bool ipv6; @override @JsonKey(name: "find-process-mode", unknownEnumValue: FindProcessMode.always) final FindProcessMode findProcessMode; @override @JsonKey(name: "keep-alive-interval") final int keepAliveInterval; @override @JsonKey(name: "unified-delay") final bool unifiedDelay; @override @JsonKey(name: "tcp-concurrent") final bool tcpConcurrent; @override @JsonKey(fromJson: Tun.safeFormJson) final Tun tun; @override @JsonKey(fromJson: Dns.safeDnsFromJson) final Dns dns; @override @JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson) final GeoXUrl geoXUrl; @override @JsonKey(name: "geodata-loader") final GeodataLoader geodataLoader; final List _proxyGroups; @override @JsonKey(name: "proxy-groups") List get proxyGroups { if (_proxyGroups is EqualUnmodifiableListView) return _proxyGroups; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_proxyGroups); } final List _rule; @override @JsonKey() List get rule { if (_rule is EqualUnmodifiableListView) return _rule; // ignore: implicit_dynamic_type return EqualUnmodifiableListView(_rule); } @override @JsonKey(name: "global-ua") final String? globalUa; @override @JsonKey(name: "external-controller") final ExternalControllerStatus externalController; final Map _hosts; @override @JsonKey() Map get hosts { if (_hosts is EqualUnmodifiableMapView) return _hosts; // ignore: implicit_dynamic_type return EqualUnmodifiableMapView(_hosts); } @override String toString() { return 'ClashConfig(mixedPort: $mixedPort, mode: $mode, allowLan: $allowLan, logLevel: $logLevel, ipv6: $ipv6, findProcessMode: $findProcessMode, keepAliveInterval: $keepAliveInterval, unifiedDelay: $unifiedDelay, tcpConcurrent: $tcpConcurrent, tun: $tun, dns: $dns, geoXUrl: $geoXUrl, geodataLoader: $geodataLoader, proxyGroups: $proxyGroups, rule: $rule, globalUa: $globalUa, externalController: $externalController, hosts: $hosts)'; } @override bool operator ==(Object other) { return identical(this, other) || (other.runtimeType == runtimeType && other is _$ClashConfigImpl && (identical(other.mixedPort, mixedPort) || other.mixedPort == mixedPort) && (identical(other.mode, mode) || other.mode == mode) && (identical(other.allowLan, allowLan) || other.allowLan == allowLan) && (identical(other.logLevel, logLevel) || other.logLevel == logLevel) && (identical(other.ipv6, ipv6) || other.ipv6 == ipv6) && (identical(other.findProcessMode, findProcessMode) || other.findProcessMode == findProcessMode) && (identical(other.keepAliveInterval, keepAliveInterval) || other.keepAliveInterval == keepAliveInterval) && (identical(other.unifiedDelay, unifiedDelay) || other.unifiedDelay == unifiedDelay) && (identical(other.tcpConcurrent, tcpConcurrent) || other.tcpConcurrent == tcpConcurrent) && (identical(other.tun, tun) || other.tun == tun) && (identical(other.dns, dns) || other.dns == dns) && (identical(other.geoXUrl, geoXUrl) || other.geoXUrl == geoXUrl) && (identical(other.geodataLoader, geodataLoader) || other.geodataLoader == geodataLoader) && const DeepCollectionEquality() .equals(other._proxyGroups, _proxyGroups) && const DeepCollectionEquality().equals(other._rule, _rule) && (identical(other.globalUa, globalUa) || other.globalUa == globalUa) && (identical(other.externalController, externalController) || other.externalController == externalController) && const DeepCollectionEquality().equals(other._hosts, _hosts)); } @JsonKey(includeFromJson: false, includeToJson: false) @override int get hashCode => Object.hash( runtimeType, mixedPort, mode, allowLan, logLevel, ipv6, findProcessMode, keepAliveInterval, unifiedDelay, tcpConcurrent, tun, dns, geoXUrl, geodataLoader, const DeepCollectionEquality().hash(_proxyGroups), const DeepCollectionEquality().hash(_rule), globalUa, externalController, const DeepCollectionEquality().hash(_hosts)); /// Create a copy of ClashConfig /// with the given fields replaced by the non-null parameter values. @JsonKey(includeFromJson: false, includeToJson: false) @override @pragma('vm:prefer-inline') _$$ClashConfigImplCopyWith<_$ClashConfigImpl> get copyWith => __$$ClashConfigImplCopyWithImpl<_$ClashConfigImpl>(this, _$identity); @override Map toJson() { return _$$ClashConfigImplToJson( this, ); } } abstract class _ClashConfig implements ClashConfig { const factory _ClashConfig( {@JsonKey(name: "mixed-port") final int mixedPort, final Mode mode, @JsonKey(name: "allow-lan") final bool allowLan, @JsonKey(name: "log-level") final LogLevel logLevel, final bool ipv6, @JsonKey( name: "find-process-mode", unknownEnumValue: FindProcessMode.always) final FindProcessMode findProcessMode, @JsonKey(name: "keep-alive-interval") final int keepAliveInterval, @JsonKey(name: "unified-delay") final bool unifiedDelay, @JsonKey(name: "tcp-concurrent") final bool tcpConcurrent, @JsonKey(fromJson: Tun.safeFormJson) final Tun tun, @JsonKey(fromJson: Dns.safeDnsFromJson) final Dns dns, @JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson) final GeoXUrl geoXUrl, @JsonKey(name: "geodata-loader") final GeodataLoader geodataLoader, @JsonKey(name: "proxy-groups") final List proxyGroups, final List rule, @JsonKey(name: "global-ua") final String? globalUa, @JsonKey(name: "external-controller") final ExternalControllerStatus externalController, final Map hosts}) = _$ClashConfigImpl; factory _ClashConfig.fromJson(Map json) = _$ClashConfigImpl.fromJson; @override @JsonKey(name: "mixed-port") int get mixedPort; @override Mode get mode; @override @JsonKey(name: "allow-lan") bool get allowLan; @override @JsonKey(name: "log-level") LogLevel get logLevel; @override bool get ipv6; @override @JsonKey(name: "find-process-mode", unknownEnumValue: FindProcessMode.always) FindProcessMode get findProcessMode; @override @JsonKey(name: "keep-alive-interval") int get keepAliveInterval; @override @JsonKey(name: "unified-delay") bool get unifiedDelay; @override @JsonKey(name: "tcp-concurrent") bool get tcpConcurrent; @override @JsonKey(fromJson: Tun.safeFormJson) Tun get tun; @override @JsonKey(fromJson: Dns.safeDnsFromJson) Dns get dns; @override @JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson) GeoXUrl get geoXUrl; @override @JsonKey(name: "geodata-loader") GeodataLoader get geodataLoader; @override @JsonKey(name: "proxy-groups") List get proxyGroups; @override List get rule; @override @JsonKey(name: "global-ua") String? get globalUa; @override @JsonKey(name: "external-controller") ExternalControllerStatus get externalController; @override Map get hosts; /// Create a copy of ClashConfig /// with the given fields replaced by the non-null parameter values. @override @JsonKey(includeFromJson: false, includeToJson: false) _$$ClashConfigImplCopyWith<_$ClashConfigImpl> get copyWith => throw _privateConstructorUsedError; }