Package io.github.qishr.cascara.lang.json.util
Interface JsonSourceBuffer
java.lang.Object
io.github.qishr.cascara.lang.json.util.JsonSourceBuffer
All Implemented Interfaces:
SourceBuffer
public interface JsonSourceBuffer
Method Summary
| Modifier and Type | Method | Description |
|---|---|---|
| public abstract JsonSourceBuffer | setOptions(SourceBufferOptions options) | |
| public abstract void | skipWhitespaceSimd() | |
| public abstract byte | peekByte() | |
| public abstract byte | advanceByte() | |
| public abstract char | advanceWithTracking() | |
| public abstract void | backupWithTracking() | |
| public abstract int | scanStructuralSimd(int pos) | |
| public abstract int | scanAsciiUntilUtf8LeadSimd(int pos) | |
| public abstract int | scanIdentifierStartSimd(int pos) | |
| public abstract void | advanceBy(int n) | |
| public abstract int | parseEightDigitsSIMD(byte[] raw, int offset) | |
| public abstract boolean | isEightDigitsSIMD(byte[] raw, int offset, int limit) | |
| public abstract boolean | isEightDigits(byte[] raw, int offset, int limit) | |
| public abstract int | parseEightDigits(byte[] raw, int offset) | |
| public abstract boolean | matchKeywordByte(byte[] raw, int offset, String kw) | |
| public abstract boolean | matchKeywordByte(byte[] raw, int offset, String kw, int relativeOffset) | |
| public abstract int | scanDigitsSimd(int pos) | |
| public abstract int | scanStringAsciiSimd(int pos, byte quoteByte) | |
| public abstract void | skipWhitespaceAndFormattingSimd() | Skips whitespace and comments. |
| public abstract void | scanIdentifierSimd() | |
| public abstract byte[] | getBytes() |
Method Details
setOptions
public abstract JsonSourceBuffer setOptions(SourceBufferOptions options)
skipWhitespaceSimd
public abstract void skipWhitespaceSimd()
peekByte
public abstract byte peekByte()
advanceByte
public abstract byte advanceByte()
advanceWithTracking
public abstract char advanceWithTracking()
backupWithTracking
public abstract void backupWithTracking()
scanStructuralSimd
public abstract int scanStructuralSimd(int pos)
scanAsciiUntilUtf8LeadSimd
public abstract int scanAsciiUntilUtf8LeadSimd(int pos)
scanIdentifierStartSimd
public abstract int scanIdentifierStartSimd(int pos)
advanceBy
public abstract void advanceBy(int n)
parseEightDigitsSIMD
public abstract int parseEightDigitsSIMD(byte[] raw, int offset)
isEightDigitsSIMD
public abstract boolean isEightDigitsSIMD(byte[] raw, int offset, int limit)
isEightDigits
public abstract boolean isEightDigits(byte[] raw, int offset, int limit)
parseEightDigits
public abstract int parseEightDigits(byte[] raw, int offset)
matchKeywordByte
public abstract boolean matchKeywordByte(byte[] raw, int offset, String kw)
matchKeywordByte
public abstract boolean matchKeywordByte(byte[] raw, int offset, String kw, int relativeOffset)
scanDigitsSimd
public abstract int scanDigitsSimd(int pos)
scanStringAsciiSimd
public abstract int scanStringAsciiSimd(int pos, byte quoteByte)
skipWhitespaceAndFormattingSimd
public abstract void skipWhitespaceAndFormattingSimd()
Skips whitespace and comments.Suitable for JSON5.
scanIdentifierSimd
public abstract void scanIdentifierSimd()
getBytes
public abstract byte[] getBytes()