map<TResult extends Object?> method

  1. @optionalTypeArgs
TResult map<TResult extends Object?>({
  1. required TResult repoRef(
    1. UAdminGetSubjectStatusSubjectRepoRef value
    ),
  2. required TResult repoStrongRef(
    1. UAdminGetSubjectStatusSubjectRepoStrongRef value
    ),
  3. required TResult repoBlobRef(
    1. UAdminGetSubjectStatusSubjectRepoBlobRef value
    ),
  4. required TResult unknown(
    1. UAdminGetSubjectStatusSubjectUnknown value
    ),
})

A switch-like method, using callbacks.

Callbacks receives the raw object, upcasted. It is equivalent to doing:

switch (sealedClass) {
  case final Subclass value:
    return ...;
  case final Subclass2 value:
    return ...;
}

Implementation

@optionalTypeArgs TResult map<TResult extends Object?>({required TResult Function( UAdminGetSubjectStatusSubjectRepoRef value)  repoRef,required TResult Function( UAdminGetSubjectStatusSubjectRepoStrongRef value)  repoStrongRef,required TResult Function( UAdminGetSubjectStatusSubjectRepoBlobRef value)  repoBlobRef,required TResult Function( UAdminGetSubjectStatusSubjectUnknown value)  unknown,}){
final _that = this;
switch (_that) {
case UAdminGetSubjectStatusSubjectRepoRef():
return repoRef(_that);case UAdminGetSubjectStatusSubjectRepoStrongRef():
return repoStrongRef(_that);case UAdminGetSubjectStatusSubjectRepoBlobRef():
return repoBlobRef(_that);case UAdminGetSubjectStatusSubjectUnknown():
return unknown(_that);}
}