Public Member Functions | Static Public Member Functions | Public Attributes

JSCompiler Struct Reference

#include <jsparse.h>

Collaboration diagram for JSCompiler:

List of all members.

Public Member Functions

 JSCompiler (JSContext *cx, JSPrincipals *prin=NULL, JSStackFrame *cfp=NULL)
 ~JSCompiler ()
bool init (const jschar *base, size_t length, FILE *fp, const char *filename, uintN lineno)
void setPrincipals (JSPrincipals *prin)
JSParseNodeparse (JSObject *chain)
JSObjectBoxnewObjectBox (JSObject *obj)
JSFunctionBoxnewFunctionBox (JSObject *obj, JSParseNode *fn, JSTreeContext *tc)
JSFunctionnewFunction (JSTreeContext *tc, JSAtom *atom, uintN lambda)
bool analyzeFunctions (JSFunctionBox *funbox, uint32 &tcflags)
bool markFunArgs (JSFunctionBox *funbox, uintN tcflags)
void setFunctionKinds (JSFunctionBox *funbox, uint32 &tcflags)
void trace (JSTracer *trc)

Static Public Member Functions

static bool compileFunctionBody (JSContext *cx, JSFunction *fun, JSPrincipals *principals, const jschar *chars, size_t length, const char *filename, uintN lineno)
static JSScriptcompileScript (JSContext *cx, JSObject *scopeChain, JSStackFrame *callerFrame, JSPrincipals *principals, uint32 tcflags, const jschar *chars, size_t length, FILE *file, const char *filename, uintN lineno, JSString *source=NULL, unsigned staticLevel=0)

Public Attributes

JSContextcontext
JSAtomListElementaleFreeList
void * tempFreeList [6U]
JSTokenStream tokenStream
void * tempPoolMark
JSPrincipalsprincipals
JSStackFramecallerFrame
JSParseNodenodeList
uint32 functionCount
JSObjectBoxtraceListHead
JSTempValueRooter tempRoot

Constructor & Destructor Documentation

JSCompiler::JSCompiler ( JSContext cx,
JSPrincipals prin = NULL,
JSStackFrame cfp = NULL 
) [inline]
JSCompiler::~JSCompiler (  ) 

Member Function Documentation

bool JSCompiler::analyzeFunctions ( JSFunctionBox funbox,
uint32 tcflags 
)
static bool JSCompiler::compileFunctionBody ( JSContext cx,
JSFunction fun,
JSPrincipals principals,
const jschar chars,
size_t  length,
const char *  filename,
uintN  lineno 
) [static]
static JSScript* JSCompiler::compileScript ( JSContext cx,
JSObject scopeChain,
JSStackFrame callerFrame,
JSPrincipals principals,
uint32  tcflags,
const jschar chars,
size_t  length,
FILE *  file,
const char *  filename,
uintN  lineno,
JSString source = NULL,
unsigned  staticLevel = 0 
) [static]
bool JSCompiler::init ( const jschar base,
size_t  length,
FILE *  fp,
const char *  filename,
uintN  lineno 
)
bool JSCompiler::markFunArgs ( JSFunctionBox funbox,
uintN  tcflags 
)
JSFunction* JSCompiler::newFunction ( JSTreeContext tc,
JSAtom atom,
uintN  lambda 
)
JSFunctionBox* JSCompiler::newFunctionBox ( JSObject obj,
JSParseNode fn,
JSTreeContext tc 
)
JSObjectBox* JSCompiler::newObjectBox ( JSObject obj  ) 
JSParseNode* JSCompiler::parse ( JSObject chain  ) 
void JSCompiler::setFunctionKinds ( JSFunctionBox funbox,
uint32 tcflags 
)
void JSCompiler::setPrincipals ( JSPrincipals prin  ) 
void JSCompiler::trace ( JSTracer trc  ) 

Member Data Documentation


The documentation for this struct was generated from the following file: