public BasedSequence subSequence(CharSequence charSequence) { return BasedSequenceImpl.of(charSequence, myStart, myEnd); }
public BasedSequence safeSubSequence(CharSequence charSequence) { return BasedSequenceImpl.of(charSequence, Math.max(0, myStart), Math.min(charSequence.length(), myEnd)); }
trimmedEOL = suffix2; } else { final BasedSequence basedSequence = BasedSequenceImpl.of(nonTranslatingText); trimmedEOL = basedSequence.trimmedEOL();
private int getMaxRepeatedChars(final CharSequence text, final char c, int minCount) { BasedSequence chars = BasedSequenceImpl.of(text); int lastPos = 0; while (lastPos < chars.length()) { int pos = chars.indexOf(c, lastPos); if (pos < 0) break; int count = chars.countChars(c, pos); if (minCount <= count) minCount = count + 1; lastPos = pos + count; } return minCount; }
public void setCaptionWithMarkers( final CharSequence captionOpen, final CharSequence caption, final CharSequence captionClose ) { setCaptionCell(new TableCell(captionOpen, options.formatTableCaptionSpaces == DiscretionaryText.AS_IS ? caption : BasedSequenceImpl.of(caption).trim(), captionClose, 1, 1)); }
@Override public int indexOfAny(CharSequence s, int fromIndex, int endIndex) { switch (s.length()) { case 0: return fromIndex; case 1: return indexOf(s.charAt(0), fromIndex, endIndex); case 2: return indexOfAny(s.charAt(0), s.charAt(1), fromIndex, endIndex); case 3: return indexOfAny(s.charAt(0), s.charAt(1), s.charAt(2), fromIndex, endIndex); default: BasedSequence sequence = of(s); if (fromIndex < 0) fromIndex = 0; if (endIndex > length()) endIndex = length(); for (int i = fromIndex; i < endIndex; i++) { char c = charAt(i); if (sequence.indexOf(c) != -1) return i; } } return -1; }
public TableCell( final CharSequence openMarker, final CharSequence text, final CharSequence closeMarker, final int rowSpan, final int columnSpan, final CellAlignment alignment, final int trackedTextOffset, final int spanTrackedOffset, final int trackedTextAdjust, final boolean afterSpace, final boolean afterDelete ) { BasedSequence chars = BasedSequenceImpl.of(text); this.openMarker = BasedSequenceImpl.of(openMarker); this.closeMarker = BasedSequenceImpl.of(closeMarker); BasedSequence useMarker = this.openMarker.isEmpty() ? this.closeMarker.subSequence(0, 0) : this.openMarker.subSequence(this.openMarker.length()); this.text = chars.isEmpty() && chars != BasedSequence.NULL ? PrefixedSubSequence.of(" ", useMarker) : chars; this.rowSpan = rowSpan; this.columnSpan = columnSpan; this.alignment = alignment != null ? alignment : CellAlignment.NONE; this.trackedTextOffset = trackedTextOffset; this.spanTrackedOffset = spanTrackedOffset; this.trackedTextAdjust = trackedTextAdjust; this.afterSpace = afterSpace; this.afterDelete = afterDelete; }
@Override public void run() { setBlockFormatProvider(new FencedCodeBlockFormatProvider<T>(DocxContextImpl.this)); createP(); int[] leadColumns = new int[lines.size()]; int minSpaces = Integer.MAX_VALUE; int i = 0; for (CharSequence line : lines) { leadColumns[i] = BasedSequenceImpl.of(line).countLeadingColumns(0, " \t"); minSpaces = Utils.min(minSpaces, leadColumns[i]); i++; } ArrayList<BasedSequence> trimmedLines = new ArrayList<BasedSequence>(); i = 0; for (CharSequence line : lines) { StringBuilder sb = new StringBuilder(); int spaces = leadColumns[i] - minSpaces; while (spaces-- > 0) sb.append(' '); sb.append(BasedSequenceImpl.of(line).trim()); // Create object for p text(sb.toString()); i++; if (i < lines.size()) { addLineBreak(); } } } });
@Override public int indexOfAnyNot(CharSequence s, int fromIndex, int endIndex) { switch (s.length()) { case 0: return fromIndex; case 1: return indexOfNot(s.charAt(0), fromIndex, endIndex); case 2: return indexOfAnyNot(s.charAt(0), s.charAt(1), fromIndex, endIndex); case 3: return indexOfAnyNot(s.charAt(0), s.charAt(1), s.charAt(2), fromIndex, endIndex); default: BasedSequence sequence = of(s); if (fromIndex < 0) fromIndex = 0; if (endIndex > length()) endIndex = length(); for (int i = fromIndex; i < endIndex; i++) { char c = charAt(i); if (sequence.indexOf(c) == -1) return i; } } return -1; }
@Override public int lastIndexOfAny(CharSequence s, int startIndex, int fromIndex) { switch (s.length()) { case 0: return startIndex; case 1: return lastIndexOf(s.charAt(0), startIndex, fromIndex); case 2: return lastIndexOfAny(s.charAt(0), s.charAt(1), startIndex, fromIndex); case 3: return lastIndexOfAny(s.charAt(0), s.charAt(1), s.charAt(2), startIndex, fromIndex); default: BasedSequence sequence = of(s); if (startIndex < 0) startIndex = 0; if (fromIndex >= length()) fromIndex = length(); else fromIndex++; for (int i = fromIndex; i-- > startIndex; ) { final char c = charAt(i); if (sequence.indexOf(c) != -1) return i; } } return -1; }
@Override public int lastIndexOfAnyNot(CharSequence s, int startIndex, int fromIndex) { switch (s.length()) { case 0: return startIndex; case 1: return lastIndexOfNot(s.charAt(0), startIndex, fromIndex); case 2: return lastIndexOfAnyNot(s.charAt(0), s.charAt(1), startIndex, fromIndex); case 3: return lastIndexOfAnyNot(s.charAt(0), s.charAt(1), s.charAt(2), startIndex, fromIndex); default: BasedSequence sequence = of(s); if (startIndex < 0) startIndex = 0; if (fromIndex >= length()) fromIndex = length(); else fromIndex++; for (int i = fromIndex; i-- > startIndex; ) { final char c = charAt(i); if (sequence.indexOf(c) == -1) return i; } } return -1; }
BasedSequence matchOpen = BasedSequenceImpl.of(secondChar == ']' ? (firstChar == '+' ? "[+" : "[-") : (firstChar == '+' ? "{+" : "{-"));
private void render(final TableCaption node, final NodeFormatterContext context, MarkdownWriter markdown) { if (context.getRenderPurpose() == FORMAT) { myTable.setCaptionWithMarkers(node.getOpeningMarker(), node.getText(), node.getClosingMarker()); } else { // KLUDGE: to reuse the table formatting logic of MarkdownTable String dummyCaption = node.hasChildren() ? "dummy" : ""; String formattedCaption = MarkdownTable.formattedCaption(BasedSequenceImpl.of(dummyCaption), options); if (formattedCaption != null) { markdown.line().append(node.getOpeningMarker()); context.renderChildren(node); markdown.append(node.getClosingMarker()).line(); } } }
final BasedSequence interSpace = BasedSequenceImpl.of(state.getLine().baseSubSequence(lastChildAnyNot.getEndOffset(), state.getLine().getStartOffset()).normalizeEOL()); if (interSpace.countChars('\n') >= 2) { return BlockStart.none();
BasedSequence seq = BasedSequenceImpl.of(csq);
BasedSequence seq = BasedSequenceImpl.of(csq);
if (options.doubleBlankLineBreaksList) { final BasedSequence interSpace = paragraphPreviousNonBlank == null ? BasedSequence.NULL : BasedSequenceImpl.of(paragraphPreviousNonBlank.getChars().baseSubSequence(paragraphPreviousNonBlank.getChars().getEndOffset(), paragraph.getChars().getStartOffset()).normalizeEOL()); hadPreviousList = paragraphPreviousNonBlank instanceof DefinitionList && interSpace.countChars('\n') < 2; } else {