when<TResult extends Object?> method
- @optionalTypeArgs
- required TResult read(),
- required TResult vRead(),
- required TResult update(),
- required TResult patch(),
- required TResult delete(),
- required TResult create(),
- required TResult search(
- Uri base,
- R5ResourceType type,
- bool? pretty,
- Summary summary,
- String? format,
- List<
String> elements, - List<
String> parameters, - bool usePost,
- RestfulRequest restfulRequest,
- MimeType? mimeType,
- String accept,
- @JsonKey.new(includeFromJson: false, includeToJson: false) Client? client,
- Map<
String, String> ? headers,
- required TResult searchAll(),
- required TResult capabilities(),
- required TResult transaction(),
- required TResult batch(),
- required TResult history(
- Uri base,
- R5ResourceType type,
- String fhirId,
- bool? pretty,
- Summary summary,
- String? format,
- List<
String> elements, - List<
String> parameters, - int? count,
- FhirInstant? since,
- FhirDateTime? at,
- String? reference,
- MimeType? mimeType,
- String accept,
- @JsonKey.new(includeFromJson: false, includeToJson: false) Client? client,
- Map<
String, String> ? headers,
- required TResult historyType(
- Uri base,
- R5ResourceType type,
- bool? pretty,
- Summary summary,
- String? format,
- List<
String> elements, - List<
String> parameters, - int? count,
- FhirInstant? since,
- FhirDateTime? at,
- String? reference,
- MimeType? mimeType,
- String accept,
- @JsonKey.new(includeFromJson: false, includeToJson: false) Client? client,
- Map<
String, String> ? headers,
- required TResult historyAll(
- Uri base,
- bool? pretty,
- Summary summary,
- String? format,
- List<
String> elements, - List<
String> parameters, - int? count,
- FhirInstant? since,
- FhirDateTime? at,
- String? reference,
- MimeType? mimeType,
- String accept,
- @JsonKey.new(includeFromJson: false, includeToJson: false) Client? client,
- Map<
String, String> ? headers,
- required TResult operation(
- Uri base,
- R5ResourceType? type,
- String? fhirId,
- bool? pretty,
- Summary summary,
- String? format,
- List<
String> elements, - List<
String> parameters, - Parameters? fhirParameter,
- String operation,
- bool usePost,
- bool useFormData,
- MimeType? mimeType,
- String accept,
- @JsonKey.new(includeFromJson: false, includeToJson: false) Client? client,
- Map<
String, String> ? headers,
A switch-like method, using callbacks.
As opposed to map, this offers destructuring.
It is equivalent to doing:
switch (sealedClass) {
case Subclass(:final field):
return ...;
case Subclass2(:final field2):
return ...;
}
Implementation
@optionalTypeArgs TResult when<TResult extends Object?>({required TResult Function( Uri base, R5ResourceType type, String fhirId, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) read,required TResult Function( Uri base, R5ResourceType type, String fhirId, FhirId vid, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) vRead,required TResult Function( Uri base, Resource resource, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) update,required TResult Function( Uri base, Resource resource, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) patch,required TResult Function( Uri base, R5ResourceType type, String fhirId, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) delete,required TResult Function( Uri base, Resource resource, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) create,required TResult Function( Uri base, R5ResourceType type, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, bool usePost, RestfulRequest restfulRequest, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) search,required TResult Function( Uri base, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) searchAll,required TResult Function( Uri base, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, Mode mode, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) capabilities,required TResult Function( Uri base, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, Bundle bundle, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) transaction,required TResult Function( Uri base, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, Bundle bundle, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) batch,required TResult Function( Uri base, R5ResourceType type, String fhirId, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, int? count, FhirInstant? since, FhirDateTime? at, String? reference, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) history,required TResult Function( Uri base, R5ResourceType type, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, int? count, FhirInstant? since, FhirDateTime? at, String? reference, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) historyType,required TResult Function( Uri base, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, int? count, FhirInstant? since, FhirDateTime? at, String? reference, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) historyAll,required TResult Function( Uri base, R5ResourceType? type, String? fhirId, bool? pretty, Summary summary, String? format, List<String> elements, List<String> parameters, Parameters? fhirParameter, String operation, bool usePost, bool useFormData, MimeType? mimeType, String accept, @JsonKey(includeFromJson: false, includeToJson: false) Client? client, Map<String, String>? headers) operation,}) {final _that = this;
switch (_that) {
case FhirReadRequest():
return read(_that.base,_that.type,_that.fhirId,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirVReadRequest():
return vRead(_that.base,_that.type,_that.fhirId,_that.vid,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirUpdateRequest():
return update(_that.base,_that.resource,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirPatchRequest():
return patch(_that.base,_that.resource,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirDeleteRequest():
return delete(_that.base,_that.type,_that.fhirId,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirCreateRequest():
return create(_that.base,_that.resource,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirSearchRequest():
return search(_that.base,_that.type,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.usePost,_that.restfulRequest,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirSearchAllRequest():
return searchAll(_that.base,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirCapabilitiesRequest():
return capabilities(_that.base,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.mode,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirTransactionRequest():
return transaction(_that.base,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.bundle,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirBatchRequest():
return batch(_that.base,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.bundle,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirHistoryRequest():
return history(_that.base,_that.type,_that.fhirId,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.count,_that.since,_that.at,_that.reference,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirHistoryTypeRequest():
return historyType(_that.base,_that.type,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.count,_that.since,_that.at,_that.reference,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirHistoryAllRequest():
return historyAll(_that.base,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.count,_that.since,_that.at,_that.reference,_that.mimeType,_that.accept,_that.client,_that.headers);case FhirOperationRequest():
return operation(_that.base,_that.type,_that.fhirId,_that.pretty,_that.summary,_that.format,_that.elements,_that.parameters,_that.fhirParameter,_that.operation,_that.usePost,_that.useFormData,_that.mimeType,_that.accept,_that.client,_that.headers);}
}