isMergeEnabled abstract method
Returns whether merging is enabled for this particular instance.
This method allows objects to dynamically control whether they participate in merging operations. When false, the merge operation may return the current object unchanged or follow different merging semantics.
Returns true if this instance supports and allows merging, false otherwise.
Example:
class OptionalMergeConfig implements Mergeable {
final bool enableMerging;
final Map<String, dynamic> values;
OptionalMergeConfig(this.values, {this.enableMerging = true});
@override
bool isMergeEnabled() => enableMerging;
@override
Object merge(Object parent) {
if (!enableMerging) return this;
if (parent is OptionalMergeConfig) {
return OptionalMergeConfig({...parent.values, ...values});
}
return this;
}
}
final config = OptionalMergeConfig({'key': 'value'}, enableMerging: false);
print(config.isMergeEnabled()); // false
Implementation
bool isMergeEnabled();