CoralWidget class

A Flutter widget that binds a Coral of Widgets to the element tree.

CoralWidget acts as the terminal boundary that listens to the reactive pipeline and rebuilds itself whenever the underlying coral emits a new Widget.

Design Philosophy: Bridges Flutter's imperative widget lifecycle with the declarative, reactive topology of Coralline. It wraps the reactive stream into a single ComponentElement (CoralWidgetElement), performing lazy pull computations of the UI tree only when marked dirty.

AI & Developer Note:

Example:

final Coral<Widget> myUiCoral = ...;
final widget = CoralWidget(
  coral: myUiCoral,
  errorBuilder: (context, error, stackTrace) => Text('Error: $error'),
);
Inheritance

Constructors

CoralWidget({Key? key, required Coral<Widget> coral, Widget errorBuilder(BuildContext context, Object error, StackTrace? stackTrace)?})
const

Properties

coral Coral<Widget>
The reactive Coral node that provides the declarative UI Widget.
final
errorBuilder Widget Function(BuildContext context, Object error, StackTrace? stackTrace)?
An optional builder function rendering a fallback UI if the pipeline enters a damaged state.
final
hashCode int
The hash code for this object.
no setterinherited
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

createElement() CoralWidgetElement
Inflates this configuration to a concrete instance.
override
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object.
inherited
toStringShort() String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited