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

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

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

Buffer.indexOfElement介绍

暂无

代码示例

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

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

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

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

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

  1. /**
  2. * Reads a double-quoted string, unescaping quoted pairs like {@code \"} to the 2nd character in
  3. * each sequence. Returns the unescaped string, or null if the buffer isn't prefixed with a
  4. * double-quoted string.
  5. */
  6. private static String readQuotedString(Buffer buffer) {
  7. if (buffer.readByte() != '\"') throw new IllegalArgumentException();
  8. Buffer result = new Buffer();
  9. while (true) {
  10. long i = buffer.indexOfElement(QUOTED_STRING_DELIMITERS);
  11. if (i == -1L) return null; // Unterminated quoted string.
  12. if (buffer.getByte(i) == '"') {
  13. result.write(buffer, i);
  14. buffer.readByte(); // Consume '"'.
  15. return result.readUtf8();
  16. }
  17. if (buffer.size() == i + 1L) return null; // Dangling escape.
  18. result.write(buffer, i);
  19. buffer.readByte(); // Consume '\'.
  20. result.write(buffer, 1L); // The escaped character.
  21. }
  22. }

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

  1. /**
  2. * Reads a double-quoted string, unescaping quoted pairs like {@code \"} to the 2nd character in
  3. * each sequence. Returns the unescaped string, or null if the buffer isn't prefixed with a
  4. * double-quoted string.
  5. */
  6. private static String readQuotedString(Buffer buffer) {
  7. if (buffer.readByte() != '\"') throw new IllegalArgumentException();
  8. Buffer result = new Buffer();
  9. while (true) {
  10. long i = buffer.indexOfElement(QUOTED_STRING_DELIMITERS);
  11. if (i == -1L) return null; // Unterminated quoted string.
  12. if (buffer.getByte(i) == '"') {
  13. result.write(buffer, i);
  14. buffer.readByte(); // Consume '"'.
  15. return result.readUtf8();
  16. }
  17. if (buffer.size() == i + 1L) return null; // Dangling escape.
  18. result.write(buffer, i);
  19. buffer.readByte(); // Consume '\'.
  20. result.write(buffer, 1L); // The escaped character.
  21. }
  22. }

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

  1. @Override public long indexOfElement(ByteString targetBytes) {
  2. return indexOfElement(targetBytes, 0);
  3. }

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

  1. @Override public long indexOfElement(ByteString targetBytes, long fromIndex) throws IOException {
  2. if (closed) throw new IllegalStateException("closed");
  3. while (fromIndex >= buffer.size) {
  4. if (source.read(buffer, Segment.SIZE) == -1) return -1L;
  5. }
  6. long index;
  7. while ((index = buffer.indexOfElement(targetBytes, fromIndex)) == -1) {
  8. fromIndex = buffer.size;
  9. if (source.read(buffer, Segment.SIZE) == -1) return -1L;
  10. }
  11. return index;
  12. }

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

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

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

  1. /**
  2. * Reads a double-quoted string, unescaping quoted pairs like {@code \"} to the 2nd character in
  3. * each sequence. Returns the unescaped string, or null if the buffer isn't prefixed with a
  4. * double-quoted string.
  5. */
  6. private static String readQuotedString(Buffer buffer) {
  7. if (buffer.readByte() != '\"') throw new IllegalArgumentException();
  8. Buffer result = new Buffer();
  9. while (true) {
  10. long i = buffer.indexOfElement(QUOTED_STRING_DELIMITERS);
  11. if (i == -1L) return null; // Unterminated quoted string.
  12. if (buffer.getByte(i) == '"') {
  13. result.write(buffer, i);
  14. buffer.readByte(); // Consume '"'.
  15. return result.readUtf8();
  16. }
  17. if (buffer.size() == i + 1L) return null; // Dangling escape.
  18. result.write(buffer, i);
  19. buffer.readByte(); // Consume '\'.
  20. result.write(buffer, 1L); // The escaped character.
  21. }
  22. }

相关文章