V8Scope::V8Scope( V8ScriptEngine * engine ) : _engine( engine ) , _connectState( NOT ){ Locker l; HandleScope handleScope; _context = Context::New(); Context::Scope context_scope( _context ); _global = Persistent< v8::Object >::New( _context->Global() ); _this = Persistent< v8::Object >::New( v8::Object::New() ); _global->Set(v8::String::New("print"), v8::FunctionTemplate::New(Print)->GetFunction() ); _global->Set(v8::String::New("version"), v8::FunctionTemplate::New(Version)->GetFunction() ); _global->Set(v8::String::New("load"), v8::FunctionTemplate::New(loadCallback, v8::External::New(this))->GetFunction() ); _wrapper = Persistent< v8::Function >::New( getObjectWrapperTemplate()->GetFunction() ); _global->Set(v8::String::New("gc"), v8::FunctionTemplate::New(GCV8)->GetFunction() ); installDBTypes( _global ); }
V8Scope::V8Scope( V8ScriptEngine * engine ) : _engine( engine ) , _handleScope(), _context( Context::New() ) , _scope( _context ) , _global( _context->Global() ) , _connectState( NOT ){ _this = v8::Object::New(); _global->Set(v8::String::New("print"), v8::FunctionTemplate::New(Print)->GetFunction() ); _global->Set(v8::String::New("version"), v8::FunctionTemplate::New(Version)->GetFunction() ); _global->Set(v8::String::New("load") ,v8::FunctionTemplate::New(loadCallback, v8::External::New(this))->GetFunction() ); //_externalTemplate = getMongoFunctionTemplate( false ); //_localTemplate = getMongoFunctionTemplate( true ); _wrapper = getObjectWrapperTemplate()->GetFunction(); installDBTypes( _global ); }