ElementNodePatterns extension

Adds pattern-matching-related methods to ElementNode.

on

Methods

map<TResult extends Object?>({required TResult root(RootNode value), required TResult module(ModuleNode value), required TResult folder(FolderNode value), required TResult component(ComponentNode value), required TResult documentation(DocumentationNode value), required TResult story(StoryNode value)}) → TResult

Available on ElementNode, provided by the ElementNodePatterns extension

A switch-like method, using callbacks.
mapOrNull<TResult extends Object?>({TResult? root(RootNode value)?, TResult? module(ModuleNode value)?, TResult? folder(FolderNode value)?, TResult? component(ComponentNode value)?, TResult? documentation(DocumentationNode value)?, TResult? story(StoryNode value)?}) → TResult?

Available on ElementNode, provided by the ElementNodePatterns extension

A variant of map that fallback to returning null.
maybeMap<TResult extends Object?>({TResult root(RootNode value)?, TResult module(ModuleNode value)?, TResult folder(FolderNode value)?, TResult component(ComponentNode value)?, TResult documentation(DocumentationNode value)?, TResult story(StoryNode value)?, required TResult orElse()}) → TResult

Available on ElementNode, provided by the ElementNodePatterns extension

A variant of map that fallback to returning orElse.
maybeWhen<TResult extends Object?>({TResult root(int level, int index, String id, String title, bool isExpanded)?, TResult module(int level, int index, String id, String title, bool isExpanded)?, TResult folder(int level, int index, String id, String title, bool isExpanded)?, TResult component(int level, int index, String id, String title, bool isExpanded, Component component)?, TResult documentation(int level, int index, String id, String title, bool isExpanded, Component component, DocumentEntry document)?, TResult story(int level, int index, String id, String title, bool isExpanded, Component component, Story story)?, required TResult orElse()}) → TResult

Available on ElementNode, provided by the ElementNodePatterns extension

A variant of when that fallback to an orElse callback.
when<TResult extends Object?>({required TResult root(int level, int index, String id, String title, bool isExpanded), required TResult module(int level, int index, String id, String title, bool isExpanded), required TResult folder(int level, int index, String id, String title, bool isExpanded), required TResult component(int level, int index, String id, String title, bool isExpanded, Component component), required TResult documentation(int level, int index, String id, String title, bool isExpanded, Component component, DocumentEntry document), required TResult story(int level, int index, String id, String title, bool isExpanded, Component component, Story story)}) → TResult

Available on ElementNode, provided by the ElementNodePatterns extension

A switch-like method, using callbacks.
whenOrNull<TResult extends Object?>({TResult? root(int level, int index, String id, String title, bool isExpanded)?, TResult? module(int level, int index, String id, String title, bool isExpanded)?, TResult? folder(int level, int index, String id, String title, bool isExpanded)?, TResult? component(int level, int index, String id, String title, bool isExpanded, Component component)?, TResult? documentation(int level, int index, String id, String title, bool isExpanded, Component component, DocumentEntry document)?, TResult? story(int level, int index, String id, String title, bool isExpanded, Component component, Story story)?}) → TResult?

Available on ElementNode, provided by the ElementNodePatterns extension

A variant of when that fallback to returning null