public Text getNextNonDelimiterTextNode() { Node nextNode = node.getNext(); if (nextNode instanceof Text && (this.next == null || this.next.node != nextNode)) { return (Text) nextNode; } else { return null; } }
@Override public void mergeIfNeeded(Text first, Text last) { if (first != null && last != null && first != last) { ArrayList<BasedSequence> sb = new ArrayList<BasedSequence>(); sb.add(first.getChars()); Node node = first.getNext(); Node stop = last.getNext(); while (node != stop) { sb.add(node.getChars()); Node unlink = node; node = node.getNext(); unlink.unlink(); } BasedSequence literal = SegmentedSequence.of(sb); first.setChars(literal); } }
public Text getNextNonDelimiterTextNode() { Node nextNode = node.getNext(); if (nextNode instanceof Text && (this.next == null || this.next.node != nextNode)) { return (Text) nextNode; } else { return null; } }
public void moveNodesBetweenDelimitersTo(DelimitedNode delimitedNode, Delimiter closer) { Node tmp = getNode().getNext(); while (tmp != null && tmp != closer.getNode()) { Node next = tmp.getNext(); ((Node) delimitedNode).appendChild(tmp); tmp = next; } delimitedNode.setText(input.subSequence(getEndIndex(), closer.getStartIndex())); getNode().insertAfter((Node) delimitedNode); }
@Override public void mergeIfNeeded(Text first, Text last) { if (first != null && last != null && first != last) { ArrayList<BasedSequence> sb = new ArrayList<BasedSequence>(); sb.add(first.getChars()); Node node = first.getNext(); Node stop = last.getNext(); while (node != stop) { sb.add(node.getChars()); Node unlink = node; node = node.getNext(); unlink.unlink(); } BasedSequence literal = SegmentedSequence.of(sb); first.setChars(literal); } }
if (referenceRepository.containsKey(normalizedLabel)) { BasedSequence sequence = input.subSequence(opener.getStartIndex(), startIndex); boolean containsLinks = containsLinkRefs(refIsBare ? ref : sequence, opener.getNode().getNext(), true); isLinkOrImage = !containsLinks; refIsDefined = true; } else { boolean containsLinks = containsLinkRefs(ref, opener.getNode().getNext(), null); if (!containsLinks) { refIsBare = true; boolean containsLinks = containsLinkRefs(ref, opener.getNode().getNext(), null); if (!containsLinks) { isLinkOrImage = true; Node node = opener.getNode().getNext(); while (node != null) { Node next = node.getNext();
public void moveNodesBetweenDelimitersTo(DelimitedNode delimitedNode, Delimiter closer) { Node tmp = getNode().getNext(); while (tmp != null && tmp != closer.getNode()) { Node next = tmp.getNext(); ((Node) delimitedNode).appendChild(tmp); tmp = next; } delimitedNode.setText(input.subSequence(getEndIndex(), closer.getStartIndex())); getNode().insertAfter((Node) delimitedNode); }
if (referenceRepository.containsKey(normalizedLabel)) { BasedSequence sequence = input.subSequence(opener.getStartIndex(), startIndex); boolean containsLinks = containsLinkRefs(refIsBare ? ref : sequence, opener.getNode().getNext(), true); isLinkOrImage = !containsLinks; refIsDefined = true; } else { boolean containsLinks = containsLinkRefs(ref, opener.getNode().getNext(), null); if (!containsLinks) { refIsBare = true; boolean containsLinks = containsLinkRefs(ref, opener.getNode().getNext(), null); if (!containsLinks) { isLinkOrImage = true; Node node = opener.getNode().getNext(); while (node != null) { Node next = node.getNext();