isMergeEnabled abstract method

bool isMergeEnabled()

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();