public CharLiteral(Optional<NodeLocation> location, String value) { super(location); requireNonNull(value, "value is null"); this.value = value; this.slice = utf8Slice(CharMatcher.is(' ').trimTrailingFrom(value)); }
public static ReadMapping charReadMapping(CharType charType) { requireNonNull(charType, "charType is null"); return sliceReadMapping(charType, (resultSet, columnIndex) -> utf8Slice(CharMatcher.is(' ').trimTrailingFrom(resultSet.getString(columnIndex)))); }
/** * Joins two path elements, separated by {@link AlluxioURI#SEPARATOR}. * <p> * Note that empty element in base or paths is ignored. * * @param base base path * @param path path element to concatenate * @return joined path * @throws IllegalArgumentException if base or paths is null */ public static String concatPath(Object base, Object path) throws IllegalArgumentException { Preconditions.checkNotNull(base, "base"); Preconditions.checkNotNull(path, "path"); String trimmedBase = SEPARATOR_MATCHER.trimTrailingFrom(base.toString()); String trimmedPath = SEPARATOR_MATCHER.trimFrom(path.toString()); StringBuilder output = new StringBuilder(trimmedBase.length() + trimmedPath.length() + 1); output.append(trimmedBase); if (!trimmedPath.isEmpty()) { output.append(AlluxioURI.SEPARATOR); output.append(trimmedPath); } if (output.length() == 0) { // base must be "[/]+" return AlluxioURI.SEPARATOR; } return output.toString(); }
Preconditions.checkArgument(base != null, "Failed to concatPath: base is null"); Preconditions.checkArgument(paths != null, "Failed to concatPath: a null set of paths"); String trimmedBase = SEPARATOR_MATCHER.trimTrailingFrom(base.toString());
return replacementString; } else { return CharMatcher.whitespace().trimTrailingFrom(replacementString); // trim last newline
@Override public void configure(final Env env, final Config conf, final Binder binder) { String name = conf.getString("application.name"); Logger log = LoggerFactory.getLogger(name); String v = conf.getString("application.version"); String text = this.text.orElse(name); Provider<String> ascii = () -> Try .apply(() -> CharMatcher.whitespace() .trimTrailingFrom(convertOneLine(String.format(FONT, font), text))) .orElse(text); binder.bind(Key.get(String.class, Names.named("application.banner"))).toProvider(ascii); env.onStart(() -> { log.info("\n{} v{}\n", ascii.get(), v); }); }
.trimTrailingFrom(Comments.getTextFromComment(approximateMatchComment.get()).trim()); return MatchedComment.create( approximateMatchComment.get(),
private void doTestTrimTrailingFrom(String in, String out) { // Try a few different matchers which all match '-' and not 'x' assertEquals(out, is('-').trimTrailingFrom(in)); assertEquals(out, is('-').or(is('#')).trimTrailingFrom(in)); assertEquals(out, isNot('x').trimTrailingFrom(in)); assertEquals(out, is('x').negate().trimTrailingFrom(in)); assertEquals(out, anyOf("-#").trimTrailingFrom(in)); assertEquals(out, anyOf("-#123").trimTrailingFrom(in)); }
@Override public String apply(JCImport input) { String importExpr = input.toString(); return CharMatcher.whitespace() .or(CharMatcher.is(';')) .trimTrailingFrom(importExpr); } }));
public static Location get(String base, String path) { base = CharMatcher.is('/').trimTrailingFrom(base); path = CharMatcher.is('/').trimLeadingFrom(path); return new AutoValue_Location(base, path, -1, -1); }
fix.replace( targetStatements.get(last), CharMatcher.whitespace().trimTrailingFrom(printStatements(context, remainingInlined)));
@Override public String rewrite(Tok tok, int maxWidth, int column0) { if (!tok.isComment()) { return tok.getOriginalText(); } String text = tok.getOriginalText(); if (tok.isJavadocComment()) { text = JavadocFormatter.formatJavadoc(text, column0, options); } List<String> lines = new ArrayList<>(); Iterator<String> it = Newlines.lineIterator(text); while (it.hasNext()) { lines.add(CharMatcher.whitespace().trimTrailingFrom(it.next())); } if (tok.isSlashSlashComment()) { return indentLineComments(lines, column0); } else if (javadocShaped(lines)) { return indentJavadoc(lines, column0); } else { return preserveIndentation(lines, column0); } }
/** * Convert the duration to "hh:mm:ss" timecode representation, where ss (seconds) can be decimal. * * @param duration the duration. * @param units the unit the duration is in. * @return the timecode representation. */ public static String toTimecode(long duration, TimeUnit units) { // FIXME Negative durations are also supported. // https://www.ffmpeg.org/ffmpeg-utils.html#Time-duration checkArgument(duration >= 0, "duration must be positive"); long nanoseconds = units.toNanos(duration); // TODO This will clip at Long.MAX_VALUE long seconds = units.toSeconds(duration); long ns = nanoseconds - SECONDS.toNanos(seconds); long minutes = SECONDS.toMinutes(seconds); seconds -= MINUTES.toSeconds(minutes); long hours = MINUTES.toHours(minutes); minutes -= HOURS.toMinutes(hours); if (ns == 0) { return String.format("%02d:%02d:%02d", hours, minutes, seconds); } return ZERO.trimTrailingFrom(String.format("%02d:%02d:%02d.%09d", hours, minutes, seconds, ns)); }
public void testTrimTrailingFrom() { // trimming - doTestTrimTrailingFrom("-", ""); doTestTrimTrailingFrom("x-", "x"); doTestTrimTrailingFrom("-x", "-x"); doTestTrimTrailingFrom("--", ""); doTestTrimTrailingFrom("x--", "x"); doTestTrimTrailingFrom("--x", "--x"); doTestTrimTrailingFrom("-x-", "-x"); doTestTrimTrailingFrom("x-x", "x-x"); doTestTrimTrailingFrom("---", ""); doTestTrimTrailingFrom("--x-", "--x"); doTestTrimTrailingFrom("--xx", "--xx"); doTestTrimTrailingFrom("-x--", "-x"); doTestTrimTrailingFrom("-x-x", "-x-x"); doTestTrimTrailingFrom("-xx-", "-xx"); doTestTrimTrailingFrom("x--x", "x--x"); doTestTrimTrailingFrom("x-x-", "x-x"); doTestTrimTrailingFrom("x-xx", "x-xx"); doTestTrimTrailingFrom("x-x--xx---x----x", "x-x--xx---x----x"); // additional testing using the doc example assertEquals("abacat", anyOf("ab").trimTrailingFrom("abacatbab")); }
if (line.length() + word.trim().length() > maxWidth) { wrappedText .append(CharMatcher.whitespace().trimTrailingFrom(line.toString())) .append(LINE_SEPARATOR); line = new StringBuilder(Strings.repeat(" ", otherLinesIndent));
location = url.trim() + location; copy.headers().set(HttpHeaders.Names.LOCATION, CharMatcher.is('/').trimTrailingFrom("/ui/proxy?u=" + location) + '/');
/** * Private helper for the constructor to parse the SoyDoc description. * * @param cleanedSoyDoc The cleaned SoyDoc text. Must not be null. * @return The description (with trailing whitespace removed). */ private static String parseSoyDocDescHelper(String cleanedSoyDoc) { Matcher paramMatcher = SOY_DOC_DECL_PATTERN.matcher(cleanedSoyDoc); int endOfDescPos = (paramMatcher.find()) ? paramMatcher.start() : cleanedSoyDoc.length(); String soyDocDesc = cleanedSoyDoc.substring(0, endOfDescPos); return CharMatcher.whitespace().trimTrailingFrom(soyDocDesc); }
public CharLiteral(Optional<NodeLocation> location, String value) { super(location); requireNonNull(value, "value is null"); this.value = value; this.slice = utf8Slice(CharMatcher.is(' ').trimTrailingFrom(value)); }
public CharLiteral(Optional<NodeLocation> location, String value) { super(location); requireNonNull(value, "value is null"); this.value = value; this.slice = utf8Slice(CharMatcher.is(' ').trimTrailingFrom(value)); }
@Override public String apply(JCImport input) { String importExpr = input.toString(); return CharMatcher.whitespace() .or(CharMatcher.is(';')) .trimTrailingFrom(importExpr); } }));