public ArrayNode merge(ArrayNode other) {
        List<Node> result = new ArrayList<>(elements);
        result.addAll(other.elements);
        return new ArrayNode(
                result,
                getSourceLocation() != SourceLocation.NONE ? getSourceLocation() : other.getSourceLocation(),
                false);
    }
Merges two ArrayNodes into a new ArrayNode.

<p>If the current node has a source location, it is applied to the
result. Otherwise, the source location of {@code other} is applied
to the result.

@param other Node to merge with.
@return Returns a new merged array node.
smithy-model/src/main/java/software/amazon/smithy/model/node/ArrayNode.java