JsonToken
Date: 2016-11-03

com.google.gson.stream

## Enum JsonToken

- java.lang.Object
- - java.lang.Enum<JsonToken>
  - - com.google.gson.stream.JsonToken

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable<JsonToken>

      public enum JsonToken
      extends java.lang.Enum<JsonToken>

  A structure, name or value type in a JSON-encoded string.
  Since:
    1.6

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `BEGIN_ARRAY` The opening of a JSON array.
    `BEGIN_OBJECT` The opening of a JSON object.
    `BOOLEAN` A JSON `true` or `false`.
    `END_ARRAY` The closing of a JSON array.
    `END_DOCUMENT` The end of the JSON stream.
    `END_OBJECT` The closing of a JSON object.
    `NAME` A JSON property name.
    `NULL` A JSON `null`.
    `NUMBER` A JSON number represented in this API by a Java `double`, `long`, or `int`.
    `STRING` A JSON string.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static JsonToken` | `valueOf(java.lang.String name)` Returns the enum constant of this type with the specified name.
    `static JsonToken[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### BEGIN_ARRAY

          public static final JsonToken BEGIN_ARRAY

      The opening of a JSON array. Written using `JsonWriter.beginArray()` and read using `JsonReader.beginArray()`.

    - #### END_ARRAY

          public static final JsonToken END_ARRAY

      The closing of a JSON array. Written using `JsonWriter.endArray()` and read using `JsonReader.endArray()`.

    - #### BEGIN_OBJECT

          public static final JsonToken BEGIN_OBJECT

      The opening of a JSON object. Written using `JsonWriter.beginObject()` and read using `JsonReader.beginObject()`.

    - #### END_OBJECT

          public static final JsonToken END_OBJECT

      The closing of a JSON object. Written using `JsonWriter.endObject()` and read using `JsonReader.endObject()`.

    - #### NAME

          public static final JsonToken NAME

      A JSON property name. Within objects, tokens alternate between names and their values. Written using `JsonWriter.name(java.lang.String)` and read using `JsonReader.nextName()`

    - #### STRING

          public static final JsonToken STRING

      A JSON string.

    - #### NUMBER

          public static final JsonToken NUMBER

      A JSON number represented in this API by a Java `double`, `long`, or `int`.

    - #### BOOLEAN

          public static final JsonToken BOOLEAN

      A JSON `true` or `false`.

    - #### NULL

          public static final JsonToken NULL

      A JSON `null`.

    - #### END_DOCUMENT

          public static final JsonToken END_DOCUMENT

      The end of the JSON stream. This sentinel value is returned by `JsonReader.peek()` to signal that the JSON-encoded value has no more tokens.

  - ### Method Detail

    - #### values

          public static JsonToken[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (JsonToken c : JsonToken.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static JsonToken valueOf(java.lang.String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
        `java.lang.NullPointerException` - if the argument is null