maybeMap<TResult extends Object?> method

  1. @optionalTypeArgs
TResult maybeMap<TResult extends Object?>({
  1. TResult splToken(
    1. ParsedSplTokenProgramAccountData value
    )?,
  2. TResult token2022(
    1. ParsedSplToken2022ProgramAccountData value
    )?,
  3. TResult stake(
    1. ParsedStakeProgramAccountData value
    )?,
  4. TResult unsupported(
    1. UnsupportedProgramAccountData value
    )?,
  5. required TResult orElse(),
})

A variant of map that fallback to returning orElse.

It is equivalent to doing:

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

Implementation

@optionalTypeArgs TResult maybeMap<TResult extends Object?>({TResult Function( ParsedSplTokenProgramAccountData value)?  splToken,TResult Function( ParsedSplToken2022ProgramAccountData value)?  token2022,TResult Function( ParsedStakeProgramAccountData value)?  stake,TResult Function( UnsupportedProgramAccountData value)?  unsupported,required TResult orElse(),}){
final _that = this;
switch (_that) {
case ParsedSplTokenProgramAccountData() when splToken != null:
return splToken(_that);case ParsedSplToken2022ProgramAccountData() when token2022 != null:
return token2022(_that);case ParsedStakeProgramAccountData() when stake != null:
return stake(_that);case UnsupportedProgramAccountData() when unsupported != null:
return unsupported(_that);case _:
  return orElse();

}
}