Pyrogenesis  13997
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Namespaces | Macros | Functions | Variables
ScriptInterface.cpp File Reference

Abstractions of various SpiderMonkey features. More...

#include "precompiled.h"
#include "ScriptInterface.h"
#include "DebuggingServer.h"
#include "ScriptStats.h"
#include "AutoRooters.h"
#include "lib/debug.h"
#include "lib/utf8.h"
#include "ps/CLogger.h"
#include "ps/Filesystem.h"
#include "ps/Profile.h"
#include "ps/utf16string.h"
#include <cassert>
#include <map>
#include <boost/preprocessor/punctuation/comma_if.hpp>
#include <boost/preprocessor/repetition/repeat.hpp>
#include <boost/random/linear_congruential.hpp>
#include <boost/flyweight.hpp>
#include <boost/flyweight/key_value.hpp>
#include <boost/flyweight/no_locking.hpp>
#include <boost/flyweight/no_tracking.hpp>
#include "valgrind.h"
#include "scriptinterface/ScriptExtraHeaders.h"

Go to the source code of this file.

Classes

class  ScriptRuntime
 Abstraction around a SpiderMonkey JSRuntime. More...
 
struct  ScriptRuntime::ScriptLocation
 
struct  ScriptRuntime::ScriptLocationName
 
struct  ScriptInterface_impl
 
struct  Stringifier
 
struct  StringifierW
 
class  ValueCloner
 

Namespaces

 anonymous_namespace{ScriptInterface.cpp}
 

Macros

#define BOOST_MULTI_INDEX_DISABLE_SERIALIZATION
 
#define STACK_CHUNK_SIZE   8192
 
#define CLONE_REQUIRE(expr, msg)   if (!(expr)) { debug_warn(L"Internal error in CloneValueFromOtherContext: " msg); return JSVAL_VOID; }
 

Functions

void anonymous_namespace{ScriptInterface.cpp}::ErrorReporter (JSContext *cx, const char *message, JSErrorReport *report)
 
JSBool anonymous_namespace{ScriptInterface.cpp}::print (JSContext *cx, uintN argc, jsval *vp)
 
JSBool anonymous_namespace{ScriptInterface.cpp}::logmsg (JSContext *cx, uintN argc, jsval *vp)
 
JSBool anonymous_namespace{ScriptInterface.cpp}::warn (JSContext *cx, uintN argc, jsval *vp)
 
JSBool anonymous_namespace{ScriptInterface.cpp}::error (JSContext *cx, uintN argc, jsval *vp)
 
JSBool anonymous_namespace{ScriptInterface.cpp}::deepcopy (JSContext *cx, uintN argc, jsval *vp)
 
JSBool anonymous_namespace{ScriptInterface.cpp}::ProfileStart (JSContext *cx, uintN argc, jsval *vp)
 
JSBool anonymous_namespace{ScriptInterface.cpp}::ProfileStop (JSContext *cx, uintN argc, jsval *vp)
 
static double anonymous_namespace{ScriptInterface.cpp}::generate_uniform_real (boost::rand48 &rng, double min, double max)
 
JSBool anonymous_namespace{ScriptInterface.cpp}::Math_random (JSContext *cx, uintN argc, jsval *vp)
 

Variables

JSClass anonymous_namespace{ScriptInterface.cpp}::global_class
 

Detailed Description

Abstractions of various SpiderMonkey features.

Engine code should be using functions of these interfaces rather than directly accessing the underlying JS api.

Definition in file ScriptInterface.cpp.

Macro Definition Documentation

#define BOOST_MULTI_INDEX_DISABLE_SERIALIZATION

Definition at line 35 of file ScriptInterface.cpp.

#define CLONE_REQUIRE (   expr,
  msg 
)    if (!(expr)) { debug_warn(L"Internal error in CloneValueFromOtherContext: " msg); return JSVAL_VOID; }

Definition at line 1207 of file ScriptInterface.cpp.

#define STACK_CHUNK_SIZE   8192

Definition at line 46 of file ScriptInterface.cpp.