18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/*
2635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project *  Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
38e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
48e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  This library is free software; you can redistribute it and/or
58e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  modify it under the terms of the GNU Library General Public
68e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  License as published by the Free Software Foundation; either
78e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  version 2 of the License, or (at your option) any later version.
88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  This library is distributed in the hope that it will be useful,
108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  but WITHOUT ANY WARRANTY; without even the implied warranty of
118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  Library General Public License for more details.
138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  You should have received a copy of the GNU Library General Public License
158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  along with this library; see the file COPYING.LIB.  If not, write to
168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *  Boston, MA 02110-1301, USA.
188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project *
198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */
208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
21635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project#ifndef JSType_h
22635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project#define JSType_h
238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectnamespace JSC {
258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    /**
278e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project     * Primitive types
288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project     */
298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    enum JSType {
308e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        UnspecifiedType   = 0,
318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        UndefinedType     = 1,
328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        BooleanType       = 2,
338e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        NumberType        = 3,
348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        NullType          = 4,
358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project        StringType        = 5,
362daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch        LeafType          = 6,
370bf48ef3be53ddaa52bbead65dfd75bf90e7a2b5Ben Murdoch        // The CompoundType value must come before any JSType that may have children
382daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch        CompoundType      = 7,
392daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch        ObjectType        = 8,
402daae5fd11344eaa88a0d92b0f6d65f8d2255c00Ben Murdoch        GetterSetterType  = 9
418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project    };
428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} // namespace JSC
448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project
458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project#endif
46