1// Copyright 2011 the V8 project authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef V8_ISOLATE_INL_H_ 6#define V8_ISOLATE_INL_H_ 7 8#include "src/base/utils/random-number-generator.h" 9#include "src/debug.h" 10#include "src/isolate.h" 11 12namespace v8 { 13namespace internal { 14 15 16SaveContext::SaveContext(Isolate* isolate) 17 : isolate_(isolate), 18 prev_(isolate->save_context()) { 19 if (isolate->context() != NULL) { 20 context_ = Handle<Context>(isolate->context()); 21 } 22 isolate->set_save_context(this); 23 24 c_entry_fp_ = isolate->c_entry_fp(isolate->thread_local_top()); 25} 26 27 28bool Isolate::DebuggerHasBreakPoints() { 29 return debug()->has_break_points(); 30} 31 32 33base::RandomNumberGenerator* Isolate::random_number_generator() { 34 if (random_number_generator_ == NULL) { 35 if (FLAG_random_seed != 0) { 36 random_number_generator_ = 37 new base::RandomNumberGenerator(FLAG_random_seed); 38 } else { 39 random_number_generator_ = new base::RandomNumberGenerator(); 40 } 41 } 42 return random_number_generator_; 43} 44 45} } // namespace v8::internal 46 47#endif // V8_ISOLATE_INL_H_ 48