merge method

Tristate merge(
  1. Tristate other
)

Semanitcs nodes will only be merged when they are not in conflict.

Implementation

Tristate merge(Tristate other) {
  if (this == Tristate.isTrue || other == Tristate.isTrue) {
    return Tristate.isTrue;
  }
  if (this == Tristate.isFalse || other == Tristate.isFalse) {
    return Tristate.isFalse;
  }
  return Tristate.none;
}