Lines Matching refs:v8
1 // Copyright 2010 the V8 project authors. All rights reserved.
7 #include "v8.h"
10 #include "../include/v8-profiler.h"
12 namespace i = v8::internal;
28 namespace v8 {
38 } } // namespace v8::internal
43 v8::HandleScope hs;
44 v8::Local<v8::String> token1(v8::String::New("1"));
45 CHECK_EQ(0, te.GetTokenId(*v8::Utils::OpenHandle(*token1)));
46 CHECK_EQ(0, te.GetTokenId(*v8::Utils::OpenHandle(*token1)));
47 v8::Local<v8::String> token2(v8::String::New("2"));
48 CHECK_EQ(1, te.GetTokenId(*v8::Utils::OpenHandle(*token2)));
49 CHECK_EQ(1, te.GetTokenId(*v8::Utils::OpenHandle(*token2)));
50 CHECK_EQ(0, te.GetTokenId(*v8::Utils::OpenHandle(*token1)));
52 v8::HandleScope hs;
53 v8::Local<v8::String> token3(v8::String::New("3"));
54 CHECK_EQ(2, te.GetTokenId(*v8::Utils::OpenHandle(*token3)));
55 CHECK_EQ(1, te.GetTokenId(*v8::Utils::OpenHandle(*token2)));
56 CHECK_EQ(0, te.GetTokenId(*v8::Utils::OpenHandle(*token1)));
61 CHECK_EQ(1, te.GetTokenId(*v8::Utils::OpenHandle(*token2)));
62 CHECK_EQ(0, te.GetTokenId(*v8::Utils::OpenHandle(*token1)));
696 class ProfilerExtension : public v8::Extension {
698 ProfilerExtension() : v8::Extension("v8/profiler", kSource) { }
699 virtual v8::Handle<v8::FunctionTemplate> GetNativeFunction(
700 v8::Handle<v8::String> name);
701 static v8::Handle<v8::Value> StartProfiling(const v8::Arguments& args);
702 static v8::Handle<v8::Value> StopProfiling(const v8::Arguments& args);
712 v8::Handle<v8::FunctionTemplate> ProfilerExtension::GetNativeFunction(
713 v8::Handle<v8::String> name) {
714 if (name->Equals(v8::String::New("startProfiling"))) {
715 return v8::FunctionTemplate::New(ProfilerExtension::StartProfiling);
716 } else if (name->Equals(v8::String::New("stopProfiling"))) {
717 return v8::FunctionTemplate::New(ProfilerExtension::StopProfiling);
720 return v8::Handle<v8::FunctionTemplate>();
725 v8::Handle<v8::Value> ProfilerExtension::StartProfiling(
726 const v8::Arguments& args) {
728 v8::CpuProfiler::StartProfiling(args[0].As<v8::String>());
730 v8::CpuProfiler::StartProfiling(v8::String::New(""));
731 return v8::Undefined();
735 v8::Handle<v8::Value> ProfilerExtension::StopProfiling(
736 const v8::Arguments& args) {
738 v8::CpuProfiler::StopProfiling(args[0].As<v8::String>());
740 v8::CpuProfiler::StopProfiling(v8::String::New(""));
741 return v8::Undefined();
746 v8::DeclareExtension kProfilerExtensionDeclaration(&kProfilerExtension);
747 static v8::Persistent<v8::Context> env;
765 v8::HandleScope scope;
766 const char* extensions[] = { "v8/profiler" };
767 v8::ExtensionConfiguration config(1, extensions);
768 env = v8::Context::New(&config);
770 v8::HandleScope scope;