APIdia Launch Partner
Top Description Inners Fields Constructors Methods
com.badlogic.gdx.utils

public Class JsonSkimmer

extends Object
Class Inheritance
Known Direct Subclasses
com.badlogic.gdx.utils.JsonMatcher
Imports
java.io.IOException, .InputStream, .InputStreamReader, .Reader, java.util.Arrays, com.badlogic.gdx.files.FileHandle, com.badlogic.gdx.utils.JsonSkimmer.JsonToken.TokenType, .JsonValue.ValueType

Lightweight event-based JSON parser. All values are provided as strings to reduce work when many values are ignored.
Author
Nathan Sweet

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
private static final byte[]
private static final byte[]
private static final short[]
private static final byte[]
private static final short[]
private static final byte[]
private static final byte[]
private static final byte[]
private static final char[]
private static final byte[]
protected final CharArray
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv static final int
pack-priv final JsonSkimmer.JsonToken
pack-priv int[]
protected boolean
pack-priv final JsonSkimmer.JsonToken

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private static byte[]
private static byte[]
private static short[]
private static byte[]
private static short[]
private static byte[]
private static byte[]
private static byte[]
private static char[]
private static byte[]
public boolean
public void
parse(String json)

public void
parse(Reader reader)

public void
public void
public void
parse(char[] data, int offset, int length)

protected void
pop()

Called when the end of an object or array is encountered in the JSON.

protected void
push(JsonSkimmer.JsonToken
Reused after this method returns.
name
,
boolean
True when an object was encountered, else it was an array.
object
)

Called when an object or array is encountered in the JSON.

public void
stop()

Causes parsing to stop after the current or next object, array, or value.

protected void
value(JsonSkimmer.JsonToken
Reused after this method returns.
name
,
JsonSkimmer.JsonToken
Reused after this method returns.
value
)

Called when a value is encountered in the JSON.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

_json_actionsback to summary
private static final byte[] _json_actions
_json_eof_actionsback to summary
private static final byte[] _json_eof_actions
_json_index_offsetsback to summary
private static final short[] _json_index_offsets
_json_indiciesback to summary
private static final byte[] _json_indicies
_json_key_offsetsback to summary
private static final short[] _json_key_offsets
_json_range_lengthsback to summary
private static final byte[] _json_range_lengths
_json_single_lengthsback to summary
private static final byte[] _json_single_lengths
_json_trans_actionsback to summary
private static final byte[] _json_trans_actions
_json_trans_keysback to summary
private static final char[] _json_trans_keys
_json_trans_targsback to summary
private static final byte[] _json_trans_targs
bufferback to summary
protected final CharArray buffer
json_en_arrayback to summary
pack-priv static final int json_en_array
json_en_mainback to summary
pack-priv static final int json_en_main
json_en_objectback to summary
pack-priv static final int json_en_object
json_errorback to summary
pack-priv static final int json_error
json_first_finalback to summary
pack-priv static final int json_first_final
json_startback to summary
pack-priv static final int json_start
nameStringback to summary
pack-priv final JsonSkimmer.JsonToken nameString
stackback to summary
pack-priv int[] stack
stopback to summary
protected boolean stop
valueback to summary
pack-priv final JsonSkimmer.JsonToken value

Constructor Detail

JsonSkimmerback to summary
public JsonSkimmer()

Method Detail

init__json_actions_0back to summary
private static byte[] init__json_actions_0()
init__json_eof_actions_0back to summary
private static byte[] init__json_eof_actions_0()
init__json_index_offsets_0back to summary
private static short[] init__json_index_offsets_0()
init__json_indicies_0back to summary
private static byte[] init__json_indicies_0()
init__json_key_offsets_0back to summary
private static short[] init__json_key_offsets_0()
init__json_range_lengths_0back to summary
private static byte[] init__json_range_lengths_0()
init__json_single_lengths_0back to summary
private static byte[] init__json_single_lengths_0()
init__json_trans_actions_0back to summary
private static byte[] init__json_trans_actions_0()
init__json_trans_keys_0back to summary
private static char[] init__json_trans_keys_0()
init__json_trans_targs_0back to summary
private static byte[] init__json_trans_targs_0()
isStoppedback to summary
public boolean isStopped()
parseback to summary
public void parse(String json)
parseback to summary
public void parse(Reader reader)
parseback to summary
public void parse(InputStream input)
parseback to summary
public void parse(FileHandle file)
parseback to summary
public void parse(char[] data, int offset, int length)
popback to summary
protected void pop()

Called when the end of an object or array is encountered in the JSON.

pushback to summary
protected void push(JsonSkimmer.JsonToken name, boolean object)

Called when an object or array is encountered in the JSON.

Parameters
name:JsonSkimmer.JsonToken

Reused after this method returns.

object:boolean

True when an object was encountered, else it was an array.

stopback to summary
public void stop()

Causes parsing to stop after the current or next object, array, or value.

valueback to summary
protected void value(JsonSkimmer.JsonToken name, JsonSkimmer.JsonToken value)

Called when a value is encountered in the JSON.

Parameters
name:JsonSkimmer.JsonToken

Reused after this method returns.

value:JsonSkimmer.JsonToken

Reused after this method returns.

com.badlogic.gdx.utils back to summary

public Class JsonSkimmer.JsonToken

extends Object
Class Inheritance

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static enum

Field Summary

Modifier and TypeField and Description
pack-priv final CharArray
public char[]
public int
public int
public JsonSkimmer.JsonToken.TokenType
public boolean

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
private boolean
equals(String string)

public boolean
equalsString(String string)

If unescape is true, an unescaped string is allocated for the comparison.

public String

Returns:

"null" if this token represents null.
toString
()

Overrides java.lang.Object.toString.

Allocates an unescaped string.

private String
public JsonValue
value()

Returns a new JsonValue with ValueType of null, boolean, or string.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait

Field Detail

bufferback to summary
pack-priv final CharArray buffer
charsback to summary
public char[] chars
lengthback to summary
public int length
startback to summary
public int start
typeback to summary
public JsonSkimmer.JsonToken.TokenType type
unescapeback to summary
public boolean unescape

Constructor Detail

JsonTokenback to summary
pack-priv JsonToken(CharArray buffer)

Method Detail

equalsback to summary
private boolean equals(String string)
equalsStringback to summary
public boolean equalsString(String string)

If unescape is true, an unescaped string is allocated for the comparison.

toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Allocates an unescaped string.

Returns:String

"null" if this token represents null.

unescapeback to summary
private String unescape()
valueback to summary
public JsonValue value()

Returns a new JsonValue with ValueType of null, boolean, or string.

com.badlogic.gdx.utils back to summary

public final Enum JsonSkimmer.JsonToken.TokenType

extends Enum<JsonSkimmer.JsonToken.TokenType>
Class Inheritance

Field Summary

Modifier and TypeField and Description
public static final JsonSkimmer.JsonToken.TokenType
public static final JsonSkimmer.JsonToken.TokenType
public static final JsonSkimmer.JsonToken.TokenType
public static final JsonSkimmer.JsonToken.TokenType

Constructor Summary

AccessConstructor and Description
private

Field Detail

falseValueback to summary
public static final JsonSkimmer.JsonToken.TokenType falseValue
nullValueback to summary
public static final JsonSkimmer.JsonToken.TokenType nullValue
otherback to summary
public static final JsonSkimmer.JsonToken.TokenType other
trueValueback to summary
public static final JsonSkimmer.JsonToken.TokenType trueValue

Constructor Detail

TokenTypeback to summary
private TokenType()

Method Detail

valueOfback to summary
public static JsonSkimmer.JsonToken.TokenType valueOf(String name)
valuesback to summary
public static JsonSkimmer.JsonToken.TokenType[] values()