Public Types | Public Member Functions

js::Bindings Class Reference

#include <jsscript.h>

Collaboration diagram for js::Bindings:

List of all members.

Public Types

enum  { BINDING_COUNT_LIMIT = 0xFFFF }

Public Member Functions

 Bindings (JSContext *cx)
void transfer (JSContext *cx, Bindings *bindings)
void clone (JSContext *cx, Bindings *bindings)
uint16 countArgs () const
uint16 countVars () const
uint16 countUpvars () const
uintN countArgsAndVars () const
uintN countLocalNames () const
bool hasUpvars () const
bool hasLocalNames () const
const js::ShapelastShape () const
bool add (JSContext *cx, JSAtom *name, BindingKind kind)
bool addVariable (JSContext *cx, JSAtom *name)
bool addConstant (JSContext *cx, JSAtom *name)
bool addUpvar (JSContext *cx, JSAtom *name)
bool addArgument (JSContext *cx, JSAtom *name, uint16 *slotp)
bool addDestructuring (JSContext *cx, uint16 *slotp)
BindingKind lookup (JSContext *cx, JSAtom *name, uintN *indexp) const
bool hasBinding (JSContext *cx, JSAtom *name) const
JSAtomfindDuplicateArgument () const
jsuwordgetLocalNameArray (JSContext *cx, JSArenaPool *pool)
int sharpSlotBase (JSContext *cx)
void makeImmutable ()
const js::ShapelastArgument () const
const js::ShapelastVariable () const
const js::ShapelastUpvar () const
void trace (JSTracer *trc)

Member Enumeration Documentation

anonymous enum
Enumerator:
BINDING_COUNT_LIMIT 

Constructor & Destructor Documentation

js::Bindings::Bindings ( JSContext cx  )  [inline]

Member Function Documentation

bool js::Bindings::add ( JSContext cx,
JSAtom name,
BindingKind  kind 
)
bool js::Bindings::addArgument ( JSContext cx,
JSAtom name,
uint16 slotp 
) [inline]
bool js::Bindings::addConstant ( JSContext cx,
JSAtom name 
) [inline]
bool js::Bindings::addDestructuring ( JSContext cx,
uint16 slotp 
) [inline]
bool js::Bindings::addUpvar ( JSContext cx,
JSAtom name 
) [inline]
bool js::Bindings::addVariable ( JSContext cx,
JSAtom name 
) [inline]
void js::Bindings::clone ( JSContext cx,
Bindings bindings 
) [inline]
uint16 js::Bindings::countArgs (  )  const [inline]
uintN js::Bindings::countArgsAndVars (  )  const [inline]
uintN js::Bindings::countLocalNames (  )  const [inline]
uint16 js::Bindings::countUpvars (  )  const [inline]
uint16 js::Bindings::countVars (  )  const [inline]
JSAtom* js::Bindings::findDuplicateArgument (  )  const
jsuword* js::Bindings::getLocalNameArray ( JSContext cx,
JSArenaPool pool 
)
bool js::Bindings::hasBinding ( JSContext cx,
JSAtom name 
) const [inline]
bool js::Bindings::hasLocalNames (  )  const [inline]
bool js::Bindings::hasUpvars (  )  const [inline]
const js::Shape* js::Bindings::lastArgument (  )  const
const Shape * js::Bindings::lastShape (  )  const [inline]
const js::Shape* js::Bindings::lastUpvar (  )  const
const js::Shape* js::Bindings::lastVariable (  )  const
BindingKind js::Bindings::lookup ( JSContext cx,
JSAtom name,
uintN indexp 
) const
void js::Bindings::makeImmutable (  ) 
int js::Bindings::sharpSlotBase ( JSContext cx  ) 
void js::Bindings::trace ( JSTracer trc  ) 
void js::Bindings::transfer ( JSContext cx,
Bindings bindings 
) [inline]

The documentation for this class was generated from the following files: