176d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson/*
276d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson * Copyright (C) 2010 The Android Open Source Project
376d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson *
476d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson * Licensed under the Apache License, Version 2.0 (the "License");
576d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson * you may not use this file except in compliance with the License.
676d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson * You may obtain a copy of the License at
776d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson *
876d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson *      http://www.apache.org/licenses/LICENSE-2.0
976d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson *
1076d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson * Unless required by applicable law or agreed to in writing, software
1176d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson * distributed under the License is distributed on an "AS IS" BASIS,
1276d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1376d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson * See the License for the specific language governing permissions and
1476d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson * limitations under the License.
1576d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson */
1676d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson
1776d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilsonpackage android.util;
1876d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson
1976d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson/**
2076d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson * Lexical scoping elements within a JSON reader or writer.
2176d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson */
2276d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilsonenum JsonScope {
2376d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson
2476d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    /**
2576d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * An array with no elements requires no separators or newlines before
2676d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * it is closed.
2776d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     */
2876d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    EMPTY_ARRAY,
2976d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson
3076d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    /**
3176d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * A array with at least one value requires a comma and newline before
3276d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * the next element.
3376d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     */
3476d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    NONEMPTY_ARRAY,
3576d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson
3676d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    /**
3776d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * An object with no name/value pairs requires no separators or newlines
3876d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * before it is closed.
3976d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     */
4076d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    EMPTY_OBJECT,
4176d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson
4276d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    /**
4376d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * An object whose most recent element is a key. The next element must
4476d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * be a value.
4576d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     */
4676d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    DANGLING_NAME,
4776d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson
4876d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    /**
4976d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * An object with at least one name/value pair requires a comma and
5076d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * newline before the next element.
5176d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     */
5276d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    NONEMPTY_OBJECT,
5376d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson
5476d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    /**
5576d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * No object or array has been started.
5676d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     */
5776d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    EMPTY_DOCUMENT,
5876d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson
5976d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    /**
6076d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * A document with at an array or object.
6176d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     */
6276d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    NONEMPTY_DOCUMENT,
6376d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson
6476d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    /**
6576d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     * A document that's been closed and cannot be accessed.
6676d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson     */
6776d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson    CLOSED,
6876d7e20a75d24afb2f5011a7646dbde8aaa52087Jesse Wilson}
69