Annotation of sbbs/javascript/include/mozilla/js/jsexn.h, revision 1.1

1.1     ! root        1: /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
        !             2:  *
        !             3:  * The contents of this file are subject to the Netscape Public
        !             4:  * License Version 1.1 (the "License"); you may not use this file
        !             5:  * except in compliance with the License. You may obtain a copy of
        !             6:  * the License at http://www.mozilla.org/NPL/
        !             7:  *
        !             8:  * Software distributed under the License is distributed on an "AS
        !             9:  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
        !            10:  * implied. See the License for the specific language governing
        !            11:  * rights and limitations under the License.
        !            12:  *
        !            13:  * The Original Code is Mozilla Communicator client code, released
        !            14:  * March 31, 1998.
        !            15:  *
        !            16:  * The Initial Developer of the Original Code is Netscape
        !            17:  * Communications Corporation.  Portions created by Netscape are
        !            18:  * Copyright (C) 1998 Netscape Communications Corporation. All
        !            19:  * Rights Reserved.
        !            20:  *
        !            21:  * Contributor(s): 
        !            22:  *
        !            23:  * Alternatively, the contents of this file may be used under the
        !            24:  * terms of the GNU Public License (the "GPL"), in which case the
        !            25:  * provisions of the GPL are applicable instead of those above.
        !            26:  * If you wish to allow use of your version of this file only
        !            27:  * under the terms of the GPL and not to allow others to use your
        !            28:  * version of this file under the NPL, indicate your decision by
        !            29:  * deleting the provisions above and replace them with the notice
        !            30:  * and other provisions required by the GPL.  If you do not delete
        !            31:  * the provisions above, a recipient may use your version of this
        !            32:  * file under either the NPL or the GPL.
        !            33:  */
        !            34: 
        !            35: /*
        !            36:  * JS runtime exception classes.
        !            37:  */
        !            38: 
        !            39: #ifndef jsexn_h___
        !            40: #define jsexn_h___
        !            41: 
        !            42: JS_BEGIN_EXTERN_C
        !            43: 
        !            44: /*
        !            45:  * Initialize the exception constructor/prototype hierarchy.
        !            46:  */
        !            47: extern JSObject *
        !            48: js_InitExceptionClasses(JSContext *cx, JSObject *obj);
        !            49: 
        !            50: /*
        !            51:  * String constants naming the exception classes.
        !            52:  */
        !            53: extern const char js_Error_str[];
        !            54: extern const char js_InternalError_str[];
        !            55: extern const char js_EvalError_str[];
        !            56: extern const char js_RangeError_str[];
        !            57: extern const char js_ReferenceError_str[];
        !            58: extern const char js_SyntaxError_str[];
        !            59: extern const char js_TypeError_str[];
        !            60: extern const char js_URIError_str[];
        !            61: 
        !            62: /*
        !            63:  * Given a JSErrorReport, check to see if there is an exception associated with
        !            64:  * the error number.  If there is, then create an appropriate exception object,
        !            65:  * set it as the pending exception, and set the JSREPORT_EXCEPTION flag on the
        !            66:  * error report.  Exception-aware host error reporters should probably ignore
        !            67:  * error reports so flagged.  Returns JS_TRUE if an associated exception is
        !            68:  * found and set, JS_FALSE otherwise..
        !            69:  */
        !            70: extern JSBool
        !            71: js_ErrorToException(JSContext *cx, const char *message, JSErrorReport *reportp);
        !            72: 
        !            73: /*
        !            74:  * Called if a JS API call to js_Execute or js_InternalCall fails; calls the
        !            75:  * error reporter with the error report associated with any uncaught exception
        !            76:  * that has been raised.  Returns true if there was an exception pending, and
        !            77:  * the error reporter was actually called.
        !            78:  *
        !            79:  * The JSErrorReport * that the error reporter is called with is currently
        !            80:  * associated with a JavaScript object, and is not guaranteed to persist after
        !            81:  * the object is collected.  Any persistent uses of the JSErrorReport contents
        !            82:  * should make their own copy.
        !            83:  *
        !            84:  * The flags field of the JSErrorReport will have the JSREPORT_EXCEPTION flag
        !            85:  * set; embeddings that want to silently propagate JavaScript exceptions to
        !            86:  * other contexts may want to use an error reporter that ignores errors with
        !            87:  * this flag.
        !            88:  */
        !            89: extern JSBool
        !            90: js_ReportUncaughtException(JSContext *cx);
        !            91: 
        !            92: extern JSErrorReport *
        !            93: js_ErrorFromException(JSContext *cx, jsval exn);
        !            94: 
        !            95: JS_END_EXTERN_C
        !            96: 
        !            97: #endif /* jsexn_h___ */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.