okio.Buffer.indexOfElement()方法的使用及代码示例

x33g5p2x  于2022-01-16 转载在 其他  
字(4.3k)|赞(0)|评价(0)|浏览(78)

本文整理了Java中okio.Buffer.indexOfElement()方法的一些代码示例,展示了Buffer.indexOfElement()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Buffer.indexOfElement()方法的具体详情如下:
包路径:okio.Buffer
类名称:Buffer
方法名:indexOfElement

Buffer.indexOfElement介绍

暂无

代码示例

代码示例来源:origin: square/okhttp

/**
 * Consumes and returns a non-empty token, terminating at special characters in {@link
 * #TOKEN_DELIMITERS}. Returns null if the buffer is empty or prefixed with a delimiter.
 */
private static String readToken(Buffer buffer) {
 try {
  long tokenSize = buffer.indexOfElement(TOKEN_DELIMITERS);
  if (tokenSize == -1L) tokenSize = buffer.size();
  return tokenSize != 0L
    ? buffer.readUtf8(tokenSize)
    : null;
 } catch (EOFException e) {
  throw new AssertionError();
 }
}

代码示例来源:origin: com.squareup.okhttp3/okhttp

/**
 * Consumes and returns a non-empty token, terminating at special characters in {@link
 * #TOKEN_DELIMITERS}. Returns null if the buffer is empty or prefixed with a delimiter.
 */
private static String readToken(Buffer buffer) {
 try {
  long tokenSize = buffer.indexOfElement(TOKEN_DELIMITERS);
  if (tokenSize == -1L) tokenSize = buffer.size();
  return tokenSize != 0L
    ? buffer.readUtf8(tokenSize)
    : null;
 } catch (EOFException e) {
  throw new AssertionError();
 }
}

代码示例来源:origin: square/okhttp

/**
 * Reads a double-quoted string, unescaping quoted pairs like {@code \"} to the 2nd character in
 * each sequence. Returns the unescaped string, or null if the buffer isn't prefixed with a
 * double-quoted string.
 */
private static String readQuotedString(Buffer buffer) {
 if (buffer.readByte() != '\"') throw new IllegalArgumentException();
 Buffer result = new Buffer();
 while (true) {
  long i = buffer.indexOfElement(QUOTED_STRING_DELIMITERS);
  if (i == -1L) return null; // Unterminated quoted string.
  if (buffer.getByte(i) == '"') {
   result.write(buffer, i);
   buffer.readByte(); // Consume '"'.
   return result.readUtf8();
  }
  if (buffer.size() == i + 1L) return null; // Dangling escape.
  result.write(buffer, i);
  buffer.readByte(); // Consume '\'.
  result.write(buffer, 1L); // The escaped character.
 }
}

代码示例来源:origin: com.squareup.okhttp3/okhttp

/**
 * Reads a double-quoted string, unescaping quoted pairs like {@code \"} to the 2nd character in
 * each sequence. Returns the unescaped string, or null if the buffer isn't prefixed with a
 * double-quoted string.
 */
private static String readQuotedString(Buffer buffer) {
 if (buffer.readByte() != '\"') throw new IllegalArgumentException();
 Buffer result = new Buffer();
 while (true) {
  long i = buffer.indexOfElement(QUOTED_STRING_DELIMITERS);
  if (i == -1L) return null; // Unterminated quoted string.
  if (buffer.getByte(i) == '"') {
   result.write(buffer, i);
   buffer.readByte(); // Consume '"'.
   return result.readUtf8();
  }
  if (buffer.size() == i + 1L) return null; // Dangling escape.
  result.write(buffer, i);
  buffer.readByte(); // Consume '\'.
  result.write(buffer, 1L); // The escaped character.
 }
}

代码示例来源:origin: huxq17/tractor

@Override public long indexOfElement(ByteString targetBytes) {
 return indexOfElement(targetBytes, 0);
}

代码示例来源:origin: huxq17/tractor

@Override public long indexOfElement(ByteString targetBytes, long fromIndex) throws IOException {
 if (closed) throw new IllegalStateException("closed");
 while (fromIndex >= buffer.size) {
  if (source.read(buffer, Segment.SIZE) == -1) return -1L;
 }
 long index;
 while ((index = buffer.indexOfElement(targetBytes, fromIndex)) == -1) {
  fromIndex = buffer.size;
  if (source.read(buffer, Segment.SIZE) == -1) return -1L;
 }
 return index;
}

代码示例来源:origin: apache/servicemix-bundles

/**
 * Consumes and returns a non-empty token, terminating at special characters in {@link
 * #TOKEN_DELIMITERS}. Returns null if the buffer is empty or prefixed with a delimiter.
 */
private static String readToken(Buffer buffer) {
 try {
  long tokenSize = buffer.indexOfElement(TOKEN_DELIMITERS);
  if (tokenSize == -1L) tokenSize = buffer.size();
  return tokenSize != 0L
    ? buffer.readUtf8(tokenSize)
    : null;
 } catch (EOFException e) {
  throw new AssertionError();
 }
}

代码示例来源:origin: apache/servicemix-bundles

/**
 * Reads a double-quoted string, unescaping quoted pairs like {@code \"} to the 2nd character in
 * each sequence. Returns the unescaped string, or null if the buffer isn't prefixed with a
 * double-quoted string.
 */
private static String readQuotedString(Buffer buffer) {
 if (buffer.readByte() != '\"') throw new IllegalArgumentException();
 Buffer result = new Buffer();
 while (true) {
  long i = buffer.indexOfElement(QUOTED_STRING_DELIMITERS);
  if (i == -1L) return null; // Unterminated quoted string.
  if (buffer.getByte(i) == '"') {
   result.write(buffer, i);
   buffer.readByte(); // Consume '"'.
   return result.readUtf8();
  }
  if (buffer.size() == i + 1L) return null; // Dangling escape.
  result.write(buffer, i);
  buffer.readByte(); // Consume '\'.
  result.write(buffer, 1L); // The escaped character.
 }
}

相关文章