insertAfter method

void insertAfter(
  1. ChildNode node, {
  2. ChildNode? after,
})

Inserts node after after, or at the start if after is null.

A non-null after must be in this list, possibly inside groups, and node is inserted into the same group. If node is already in a list, it's moved. Inserting node next to itself does nothing.

Throws a StateError before changing anything if after isn't in this list or if this list is inside node.

Implementation

void insertAfter(ChildNode node, {ChildNode? after}) {
  if (_prepareInsert(node, after) case final list?) {
    list._link(node, after, after == null ? list._first : after._next);
  }
}