Java源码示例:org.commonmark.node.OrderedList

示例1
public IntegerAssert countOrderedList() {
    final AtomicInteger count = new AtomicInteger();
    actual.accept(new AbstractVisitor() {
        @Override
        public void visit(OrderedList orderedList) {
            count.incrementAndGet();
            super.visit(orderedList);
        }
    });
    return new IntegerAssert(count.get());
}
 
示例2
private static boolean isBulletOrdered(@NonNull Node node) {
    node = node.getParent();
    while (node != null) {
        if (node instanceof OrderedList) {
            return true;
        }
        if (node instanceof BulletList) {
            return false;
        }
        node = node.getParent();
    }
    return false;
}
 
示例3
public OrderedListHolder(ListHolder parent, OrderedList list) {
    super(parent);
    delimiter = list.getDelimiter();
    counter = list.getStartNumber();
}
 
示例4
@Override
public void visit(OrderedList orderedList) {
    visit((Node) orderedList);
}
 
示例5
private static void orderedList(@NonNull MarkwonVisitor.Builder builder) {
    builder.on(OrderedList.class, new SimpleBlockNodeVisitor());
}
 
示例6
@Override
public void configureVisitor(@NonNull MarkwonVisitor.Builder builder) {
    // NB that both ordered and bullet lists are represented
    //  by ListItem (must inspect parent to detect the type)
    builder.on(ListItem.class, (visitor, listItem) -> {
        // mimic original behaviour (copy-pasta from CorePlugin)

        final int length = visitor.length();

        visitor.visitChildren(listItem);

        final Node parent = listItem.getParent();
        if (parent instanceof OrderedList) {

            final int start = ((OrderedList) parent).getStartNumber();

            CoreProps.LIST_ITEM_TYPE.set(visitor.renderProps(), CoreProps.ListItemType.ORDERED);
            CoreProps.ORDERED_LIST_ITEM_NUMBER.set(visitor.renderProps(), start);

            // after we have visited the children increment start number
            final OrderedList orderedList = (OrderedList) parent;
            orderedList.setStartNumber(orderedList.getStartNumber() + 1);

        } else {
            CoreProps.LIST_ITEM_TYPE.set(visitor.renderProps(), CoreProps.ListItemType.BULLET);

            if (isBulletOrdered(parent)) {
                // obtain current count value
                final int count = currentBulletCountIn(parent);
                BULLET_LETTER.set(visitor.renderProps(), createBulletLetter(count));
                // update current count value
                setCurrentBulletCountIn(parent, count + 1);
            } else {
                CoreProps.BULLET_LIST_ITEM_LEVEL.set(visitor.renderProps(), listLevel(listItem));
                // clear letter info when regular bullet list is used
                BULLET_LETTER.clear(visitor.renderProps());
            }
        }

        visitor.setSpansForNodeOptional(listItem, length);

        if (visitor.hasNext(listItem)) {
            visitor.ensureNewLine();
        }
    });
}
 
示例7
public OrderedListHolder(ListHolder parent, OrderedList list) {
    super(parent);
    delimiter = list.getDelimiter();
    counter = list.getStartNumber();
}