V8 API Reference, 7.2.502.16 (for Deno 0.2.4)
trigger-failure-extension.cc
1 // Copyright 2013 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 #include "src/extensions/trigger-failure-extension.h"
6 
7 #include "src/base/logging.h"
8 #include "src/checks.h"
9 
10 namespace v8 {
11 namespace internal {
12 
13 
14 const char* const TriggerFailureExtension::kSource =
15  "native function triggerCheckFalse();"
16  "native function triggerAssertFalse();"
17  "native function triggerSlowAssertFalse();";
18 
19 
21 TriggerFailureExtension::GetNativeFunctionTemplate(v8::Isolate* isolate,
23  if (strcmp(*v8::String::Utf8Value(isolate, str), "triggerCheckFalse") == 0) {
25  isolate,
26  TriggerFailureExtension::TriggerCheckFalse);
27  } else if (strcmp(*v8::String::Utf8Value(isolate, str),
28  "triggerAssertFalse") == 0) {
30  isolate,
31  TriggerFailureExtension::TriggerAssertFalse);
32  } else {
33  CHECK_EQ(0, strcmp(*v8::String::Utf8Value(isolate, str),
34  "triggerSlowAssertFalse"));
36  isolate,
37  TriggerFailureExtension::TriggerSlowAssertFalse);
38  }
39 }
40 
41 
42 void TriggerFailureExtension::TriggerCheckFalse(
44  CHECK(false);
45 }
46 
47 
48 void TriggerFailureExtension::TriggerAssertFalse(
50  DCHECK(false);
51 }
52 
53 
54 void TriggerFailureExtension::TriggerSlowAssertFalse(
56  SLOW_DCHECK(false);
57 }
58 
59 } // namespace internal
60 } // namespace v8
Definition: v8.h:85
Definition: libplatform.h:13
static Local< FunctionTemplate > New(Isolate *isolate, FunctionCallback callback=nullptr, Local< Value > data=Local< Value >(), Local< Signature > signature=Local< Signature >(), int length=0, ConstructorBehavior behavior=ConstructorBehavior::kAllow, SideEffectType side_effect_type=SideEffectType::kHasSideEffect)
Definition: api.cc:1417