Sourceforge.net - The VCF's Project Host
   The VCF Website Home   |   Online Discussion Forums   |   Sourceforge.net Project Page   

vcf/JavaScriptKit/js-impl/jsscript.h File Reference


Classes

struct  JSTryNote
struct  JSScript

Defines

#define JSTRYNOTE_GRAIN   sizeof(ptrdiff_t)
#define JSTRYNOTE_ALIGNMASK   (JSTRYNOTE_GRAIN - 1)
#define SCRIPT_NOTES(script)   ((jssrcnote*)((script)->code+(script)->length))
#define SCRIPT_FIND_CATCH_START(script, pc, catchpc)
#define js_GetSrcNote(script, pc)   js_GetSrcNoteCached(cx, script, pc)

Functions

jsbytecodejs_FindFinallyHandler (JSScript *script, jsbytecode *pc)
 JS_FRIEND_DATA (JSClass) js_ScriptClass
JSObjectjs_InitScriptClass (JSContext *cx, JSObject *obj)
JSBool js_InitRuntimeScriptState (JSRuntime *rt)
void js_FinishRuntimeScriptState (JSRuntime *rt)
void js_FreeRuntimeScriptState (JSRuntime *rt)
const char * js_SaveScriptFilename (JSContext *cx, const char *filename)
const char * js_SaveScriptFilenameRT (JSRuntime *rt, const char *filename, uint32 flags)
uint32 js_GetScriptFilenameFlags (const char *filename)
void js_MarkScriptFilename (const char *filename)
void js_MarkScriptFilenames (JSRuntime *rt, JSBool keepAtoms)
void js_SweepScriptFilenames (JSRuntime *rt)
JSScriptjs_NewScript (JSContext *cx, uint32 length, uint32 snlength, uint32 tnlength)
 JS_FRIEND_API (JSScript *) js_NewScriptFromCG(JSContext *cx
 JS_FRIEND_API (void) js_CallNewScriptHook(JSContext *cx
void js_DestroyScript (JSContext *cx, JSScript *script)
void js_MarkScript (JSContext *cx, JSScript *script)
jssrcnotejs_GetSrcNoteCached (JSContext *cx, JSScript *script, jsbytecode *pc)
uintN js_PCToLineNumber (JSContext *cx, JSScript *script, jsbytecode *pc)
jsbytecodejs_LineNumberToPC (JSScript *script, uintN lineno)
 JS_FRIEND_API (uintN) js_GetScriptLineExtent(JSScript *script)
JSBool js_XDRScript (JSXDRState *xdr, JSScript **scriptp, JSBool *magic)

Variables

JSCodeGeneratorcg
JSCodeGenerator JSFunctionfun
JSScriptscript
JSScript JSFunctionfun
JSScriptscript

Define Documentation

#define js_GetSrcNote script,
pc   )     js_GetSrcNoteCached(cx, script, pc)
 

#define JSTRYNOTE_ALIGNMASK   (JSTRYNOTE_GRAIN - 1)
 

#define JSTRYNOTE_GRAIN   sizeof(ptrdiff_t)
 

#define SCRIPT_FIND_CATCH_START script,
pc,
catchpc   ) 
 

Value:

JS_BEGIN_MACRO                                                            \
        JSTryNote *tn_ = (script)->trynotes;                                  \
        jsbytecode *catchpc_ = NULL;                                          \
        if (tn_) {                                                            \
            ptrdiff_t off_ = PTRDIFF(pc, (script)->main, jsbytecode);         \
            if (off_ >= 0) {                                                  \
                while ((jsuword)(off_ - tn_->start) >= (jsuword)tn_->length)  \
                    ++tn_;                                                    \
                if (tn_->catchStart)                                          \
                    catchpc_ = (script)->main + tn_->catchStart;              \
            }                                                                 \
        }                                                                     \
        catchpc = catchpc_;                                                   \
    JS_END_MACRO

#define SCRIPT_NOTES script   )     ((jssrcnote*)((script)->code+(script)->length))
 


Function Documentation

void js_DestroyScript JSContext cx,
JSScript script
 

jsbytecode* js_FindFinallyHandler JSScript script,
jsbytecode pc
 

void js_FinishRuntimeScriptState JSRuntime rt  ) 
 

void js_FreeRuntimeScriptState JSRuntime rt  ) 
 

JS_FRIEND_API uintN   ) 
 

JS_FRIEND_API void   ) 
 

JS_FRIEND_API JSScript  ) 
 

JS_FRIEND_DATA JSClass   ) 
 

uint32 js_GetScriptFilenameFlags const char *  filename  ) 
 

jssrcnote* js_GetSrcNoteCached JSContext cx,
JSScript script,
jsbytecode pc
 

JSBool js_InitRuntimeScriptState JSRuntime rt  ) 
 

JSObject* js_InitScriptClass JSContext cx,
JSObject obj
 

jsbytecode* js_LineNumberToPC JSScript script,
uintN  lineno
 

void js_MarkScript JSContext cx,
JSScript script
 

void js_MarkScriptFilename const char *  filename  ) 
 

void js_MarkScriptFilenames JSRuntime rt,
JSBool  keepAtoms
 

JSScript* js_NewScript JSContext cx,
uint32  length,
uint32  snlength,
uint32  tnlength
 

uintN js_PCToLineNumber JSContext cx,
JSScript script,
jsbytecode pc
 

const char* js_SaveScriptFilename JSContext cx,
const char *  filename
 

const char* js_SaveScriptFilenameRT JSRuntime rt,
const char *  filename,
uint32  flags
 

void js_SweepScriptFilenames JSRuntime rt  ) 
 

JSBool js_XDRScript JSXDRState xdr,
JSScript **  scriptp,
JSBool magic
 


Variable Documentation

JSCodeGenerator* cg
 

JSScript JSFunction* fun
 

JSCodeGenerator JSFunction* fun
 

JSScript* script
 

JSScript* script
 

   Comments or Suggestions?    License Information