map<TResult extends Object?> method
TResult
map<TResult extends Object?>({
- required TResult text(
- TextComponent value
- required TResult card(
- CardComponent value
- required TResult carousel(
- CarouselComponent value
- required TResult productList(
- ProductListComponent value
- required TResult image(
- ImageComponent value
- required TResult buttonGroup(
- ButtonGroupComponent value
- required TResult swatchGrid(
- SwatchGridComponent value
- required TResult hostSlot(
- HostSlotComponent 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( TextComponent value) text,required TResult Function( CardComponent value) card,required TResult Function( CarouselComponent value) carousel,required TResult Function( ProductListComponent value) productList,required TResult Function( ImageComponent value) image,required TResult Function( ButtonGroupComponent value) buttonGroup,required TResult Function( SwatchGridComponent value) swatchGrid,required TResult Function( HostSlotComponent value) hostSlot,}){
final _that = this;
switch (_that) {
case TextComponent():
return text(_that);case CardComponent():
return card(_that);case CarouselComponent():
return carousel(_that);case ProductListComponent():
return productList(_that);case ImageComponent():
return image(_that);case ButtonGroupComponent():
return buttonGroup(_that);case SwatchGridComponent():
return swatchGrid(_that);case HostSlotComponent():
return hostSlot(_that);}
}