|
|
1.1 ! root 1: /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- ! 2: * vim: set sw=4 ts=8 et tw=80 ft=c: ! 3: * ! 4: * ***** BEGIN LICENSE BLOCK ***** ! 5: * Version: MPL 1.1/GPL 2.0/LGPL 2.1 ! 6: * ! 7: * The contents of this file are subject to the Mozilla Public License Version ! 8: * 1.1 (the "License"); you may not use this file except in compliance with ! 9: * the License. You may obtain a copy of the License at ! 10: * http://www.mozilla.org/MPL/ ! 11: * ! 12: * Software distributed under the License is distributed on an "AS IS" basis, ! 13: * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License ! 14: * for the specific language governing rights and limitations under the ! 15: * License. ! 16: * ! 17: * The Original Code is SpiderMonkey 1.7 work in progress, released ! 18: * February 14, 2006. ! 19: * ! 20: * The Initial Developer of the Original Code is ! 21: * Brendan Eich <[email protected]> ! 22: * ! 23: * Contributor(s): ! 24: * ! 25: * Alternatively, the contents of this file may be used under the terms of ! 26: * either of the GNU General Public License Version 2 or later (the "GPL"), ! 27: * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), ! 28: * in which case the provisions of the GPL or the LGPL are applicable instead ! 29: * of those above. If you wish to allow use of your version of this file only ! 30: * under the terms of either the GPL or the LGPL, and not to allow others to ! 31: * use your version of this file under the terms of the MPL, indicate your ! 32: * decision by deleting the provisions above and replace them with the notice ! 33: * and other provisions required by the GPL or the LGPL. If you do not delete ! 34: * the provisions above, a recipient may use your version of this file under ! 35: * the terms of any one of the MPL, the GPL or the LGPL. ! 36: * ! 37: * ***** END LICENSE BLOCK ***** */ ! 38: ! 39: #include "jsconfig.h" ! 40: ! 41: #if JS_HAS_SCRIPT_OBJECT ! 42: # define SCRIPT_INIT js_InitScriptClass ! 43: #else ! 44: # define SCRIPT_INIT js_InitNullClass ! 45: #endif ! 46: ! 47: #if JS_HAS_XML_SUPPORT ! 48: # define XML_INIT js_InitXMLClass ! 49: # define NAMESPACE_INIT js_InitNamespaceClass ! 50: # define QNAME_INIT js_InitQNameClass ! 51: # define ANYNAME_INIT js_InitAnyNameClass ! 52: # define ATTRIBUTE_INIT js_InitAttributeNameClass ! 53: #else ! 54: # define XML_INIT js_InitNullClass ! 55: # define NAMESPACE_INIT js_InitNullClass ! 56: # define QNAME_INIT js_InitNullClass ! 57: # define ANYNAME_INIT js_InitNullClass ! 58: # define ATTRIBUTE_INIT js_InitNullClass ! 59: #endif ! 60: ! 61: #if JS_HAS_GENERATORS ! 62: # define GENERATOR_INIT js_InitIteratorClasses ! 63: #else ! 64: # define GENERATOR_INIT js_InitNullClass ! 65: #endif ! 66: ! 67: #if JS_HAS_FILE_OBJECT ! 68: # define FILE_INIT js_InitFileClass ! 69: #else ! 70: # define FILE_INIT js_InitNullClass ! 71: #endif ! 72: ! 73: /* ! 74: * Enumerator codes in the second column must not change -- they are part of ! 75: * the JS XDR API. ! 76: */ ! 77: JS_PROTO(Null, 0, js_InitNullClass) ! 78: JS_PROTO(Object, 1, js_InitFunctionAndObjectClasses) ! 79: JS_PROTO(Function, 2, js_InitFunctionAndObjectClasses) ! 80: JS_PROTO(Array, 3, js_InitArrayClass) ! 81: JS_PROTO(Boolean, 4, js_InitBooleanClass) ! 82: JS_PROTO(Call, 5, js_InitCallClass) ! 83: JS_PROTO(Date, 6, js_InitDateClass) ! 84: JS_PROTO(Math, 7, js_InitMathClass) ! 85: JS_PROTO(Number, 8, js_InitNumberClass) ! 86: JS_PROTO(String, 9, js_InitStringClass) ! 87: JS_PROTO(RegExp, 10, js_InitRegExpClass) ! 88: JS_PROTO(Script, 11, SCRIPT_INIT) ! 89: JS_PROTO(XML, 12, XML_INIT) ! 90: JS_PROTO(Namespace, 13, NAMESPACE_INIT) ! 91: JS_PROTO(QName, 14, QNAME_INIT) ! 92: JS_PROTO(AnyName, 15, ANYNAME_INIT) ! 93: JS_PROTO(AttributeName, 16, ATTRIBUTE_INIT) ! 94: JS_PROTO(Error, 17, js_InitExceptionClasses) ! 95: JS_PROTO(InternalError, 18, js_InitExceptionClasses) ! 96: JS_PROTO(EvalError, 19, js_InitExceptionClasses) ! 97: JS_PROTO(RangeError, 20, js_InitExceptionClasses) ! 98: JS_PROTO(ReferenceError, 21, js_InitExceptionClasses) ! 99: JS_PROTO(SyntaxError, 22, js_InitExceptionClasses) ! 100: JS_PROTO(TypeError, 23, js_InitExceptionClasses) ! 101: JS_PROTO(URIError, 24, js_InitExceptionClasses) ! 102: JS_PROTO(Generator, 25, GENERATOR_INIT) ! 103: JS_PROTO(Iterator, 26, js_InitIteratorClasses) ! 104: JS_PROTO(StopIteration, 27, js_InitIteratorClasses) ! 105: JS_PROTO(UnusedProto28, 28, js_InitNullClass) ! 106: JS_PROTO(File, 29, FILE_INIT) ! 107: JS_PROTO(Block, 30, js_InitBlockClass) ! 108: ! 109: #undef SCRIPT_INIT ! 110: #undef XML_INIT ! 111: #undef NAMESPACE_INIT ! 112: #undef QNAME_INIT ! 113: #undef ANYNAME_INIT ! 114: #undef ATTRIBUTE_INIT ! 115: #undef GENERATOR_INIT ! 116: #undef FILE_INIT
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.