Index: src/isolate.h |
diff --git a/src/isolate.h b/src/isolate.h |
index 2753373e29b0e7372889eebc3892dae5e5a27648..ab43336254046e0d148d905433b2c98b1a356ccd 100644 |
--- a/src/isolate.h |
+++ b/src/isolate.h |
@@ -126,6 +126,16 @@ typedef ZoneList<Handle<Object> > ZoneObjectList; |
#define RETURN_EXCEPTION_IF_SCHEDULED_EXCEPTION(isolate, T) \ |
RETURN_VALUE_IF_SCHEDULED_EXCEPTION(isolate, MaybeHandle<T>()) |
+#define RETURN_RESULT(isolate, call, T) \ |
jgruber
2016/07/29 11:54:37
This is related to RETURN_RESULT_OR_FAILURE as ASS
|
+ do { \ |
+ Handle<T> __result__; \ |
+ if (!(call).ToHandle(&__result__)) { \ |
+ DCHECK((isolate)->has_pending_exception()); \ |
+ return MaybeHandle<T>(); \ |
+ } \ |
+ return __result__; \ |
+ } while (false) |
+ |
#define RETURN_RESULT_OR_FAILURE(isolate, call) \ |
do { \ |
Handle<Object> __result__; \ |