| Index: src/factory.cc
|
| diff --git a/src/factory.cc b/src/factory.cc
|
| index 5a0770853efe04fe5558c955a839e5feb980b856..13cba9d6bb4e564428ac488a2c60ee39edd2c6c8 100644
|
| --- a/src/factory.cc
|
| +++ b/src/factory.cc
|
| @@ -366,7 +366,7 @@ MaybeHandle<Map> Factory::InternalizedStringMapForString(
|
| MaybeHandle<SeqOneByteString> Factory::NewRawOneByteString(
|
| int length, PretenureFlag pretenure) {
|
| if (length > String::kMaxLength || length < 0) {
|
| - return isolate()->Throw<SeqOneByteString>(NewInvalidStringLengthError());
|
| + THROW_NEW_ERROR(isolate(), NewInvalidStringLengthError(), SeqOneByteString);
|
| }
|
| CALL_HEAP_FUNCTION(
|
| isolate(),
|
| @@ -378,7 +378,7 @@ MaybeHandle<SeqOneByteString> Factory::NewRawOneByteString(
|
| MaybeHandle<SeqTwoByteString> Factory::NewRawTwoByteString(
|
| int length, PretenureFlag pretenure) {
|
| if (length > String::kMaxLength || length < 0) {
|
| - return isolate()->Throw<SeqTwoByteString>(NewInvalidStringLengthError());
|
| + THROW_NEW_ERROR(isolate(), NewInvalidStringLengthError(), SeqTwoByteString);
|
| }
|
| CALL_HEAP_FUNCTION(
|
| isolate(),
|
| @@ -483,7 +483,7 @@ MaybeHandle<String> Factory::NewConsString(Handle<String> left,
|
| // Make sure that an out of memory exception is thrown if the length
|
| // of the new cons string is too large.
|
| if (length > String::kMaxLength || length < 0) {
|
| - return isolate()->Throw<String>(NewInvalidStringLengthError());
|
| + THROW_NEW_ERROR(isolate(), NewInvalidStringLengthError(), String);
|
| }
|
|
|
| bool left_is_one_byte = left->IsOneByteRepresentation();
|
| @@ -616,7 +616,7 @@ MaybeHandle<String> Factory::NewExternalStringFromAscii(
|
| const ExternalAsciiString::Resource* resource) {
|
| size_t length = resource->length();
|
| if (length > static_cast<size_t>(String::kMaxLength)) {
|
| - return isolate()->Throw<String>(NewInvalidStringLengthError());
|
| + THROW_NEW_ERROR(isolate(), NewInvalidStringLengthError(), String);
|
| }
|
|
|
| Handle<Map> map = external_ascii_string_map();
|
| @@ -634,7 +634,7 @@ MaybeHandle<String> Factory::NewExternalStringFromTwoByte(
|
| const ExternalTwoByteString::Resource* resource) {
|
| size_t length = resource->length();
|
| if (length > static_cast<size_t>(String::kMaxLength)) {
|
| - return isolate()->Throw<String>(NewInvalidStringLengthError());
|
| + THROW_NEW_ERROR(isolate(), NewInvalidStringLengthError(), String);
|
| }
|
|
|
| // For small strings we check whether the resource contains only
|
| @@ -1050,59 +1050,58 @@ Handle<HeapNumber> Factory::NewHeapNumber(double value,
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewTypeError(const char* message,
|
| - Vector< Handle<Object> > args) {
|
| +MaybeHandle<Object> Factory::NewTypeError(const char* message,
|
| + Vector<Handle<Object> > args) {
|
| return NewError("MakeTypeError", message, args);
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewTypeError(Handle<String> message) {
|
| +MaybeHandle<Object> Factory::NewTypeError(Handle<String> message) {
|
| return NewError("$TypeError", message);
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewRangeError(const char* message,
|
| - Vector< Handle<Object> > args) {
|
| +MaybeHandle<Object> Factory::NewRangeError(const char* message,
|
| + Vector<Handle<Object> > args) {
|
| return NewError("MakeRangeError", message, args);
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewRangeError(Handle<String> message) {
|
| +MaybeHandle<Object> Factory::NewRangeError(Handle<String> message) {
|
| return NewError("$RangeError", message);
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewSyntaxError(const char* message,
|
| - Handle<JSArray> args) {
|
| +MaybeHandle<Object> Factory::NewSyntaxError(const char* message,
|
| + Handle<JSArray> args) {
|
| return NewError("MakeSyntaxError", message, args);
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewSyntaxError(Handle<String> message) {
|
| +MaybeHandle<Object> Factory::NewSyntaxError(Handle<String> message) {
|
| return NewError("$SyntaxError", message);
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewReferenceError(const char* message,
|
| - Vector< Handle<Object> > args) {
|
| +MaybeHandle<Object> Factory::NewReferenceError(const char* message,
|
| + Vector<Handle<Object> > args) {
|
| return NewError("MakeReferenceError", message, args);
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewReferenceError(const char* message,
|
| - Handle<JSArray> args) {
|
| +MaybeHandle<Object> Factory::NewReferenceError(const char* message,
|
| + Handle<JSArray> args) {
|
| return NewError("MakeReferenceError", message, args);
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewReferenceError(Handle<String> message) {
|
| +MaybeHandle<Object> Factory::NewReferenceError(Handle<String> message) {
|
| return NewError("$ReferenceError", message);
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewError(const char* maker,
|
| - const char* message,
|
| - Vector< Handle<Object> > args) {
|
| +MaybeHandle<Object> Factory::NewError(const char* maker, const char* message,
|
| + Vector<Handle<Object> > args) {
|
| // Instantiate a closeable HandleScope for EscapeFrom.
|
| v8::EscapableHandleScope scope(reinterpret_cast<v8::Isolate*>(isolate()));
|
| Handle<FixedArray> array = NewFixedArray(args.length());
|
| @@ -1110,19 +1109,21 @@ Handle<Object> Factory::NewError(const char* maker,
|
| array->set(i, *args[i]);
|
| }
|
| Handle<JSArray> object = NewJSArrayWithElements(array);
|
| - Handle<Object> result = NewError(maker, message, object);
|
| + Handle<Object> result;
|
| + ASSIGN_RETURN_ON_EXCEPTION(isolate(), result,
|
| + NewError(maker, message, object), Object);
|
| return result.EscapeFrom(&scope);
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewEvalError(const char* message,
|
| - Vector< Handle<Object> > args) {
|
| +MaybeHandle<Object> Factory::NewEvalError(const char* message,
|
| + Vector<Handle<Object> > args) {
|
| return NewError("MakeEvalError", message, args);
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewError(const char* message,
|
| - Vector< Handle<Object> > args) {
|
| +MaybeHandle<Object> Factory::NewError(const char* message,
|
| + Vector<Handle<Object> > args) {
|
| return NewError("MakeError", message, args);
|
| }
|
|
|
| @@ -1163,9 +1164,8 @@ Handle<String> Factory::EmergencyNewError(const char* message,
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewError(const char* maker,
|
| - const char* message,
|
| - Handle<JSArray> args) {
|
| +MaybeHandle<Object> Factory::NewError(const char* maker, const char* message,
|
| + Handle<JSArray> args) {
|
| Handle<String> make_str = InternalizeUtf8String(maker);
|
| Handle<Object> fun_obj = Object::GetProperty(
|
| isolate()->js_builtins_object(), make_str).ToHandleChecked();
|
| @@ -1181,7 +1181,7 @@ Handle<Object> Factory::NewError(const char* maker,
|
| // Invoke the JavaScript factory method. If an exception is thrown while
|
| // running the factory method, use the exception as the result.
|
| Handle<Object> result;
|
| - Handle<Object> exception;
|
| + MaybeHandle<Object> exception;
|
| if (!Execution::TryCall(fun,
|
| isolate()->js_builtins_object(),
|
| arraysize(argv),
|
| @@ -1193,13 +1193,13 @@ Handle<Object> Factory::NewError(const char* maker,
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewError(Handle<String> message) {
|
| +MaybeHandle<Object> Factory::NewError(Handle<String> message) {
|
| return NewError("$Error", message);
|
| }
|
|
|
|
|
| -Handle<Object> Factory::NewError(const char* constructor,
|
| - Handle<String> message) {
|
| +MaybeHandle<Object> Factory::NewError(const char* constructor,
|
| + Handle<String> message) {
|
| Handle<String> constr = InternalizeUtf8String(constructor);
|
| Handle<JSFunction> fun = Handle<JSFunction>::cast(Object::GetProperty(
|
| isolate()->js_builtins_object(), constr).ToHandleChecked());
|
| @@ -1208,7 +1208,7 @@ Handle<Object> Factory::NewError(const char* constructor,
|
| // Invoke the JavaScript factory method. If an exception is thrown while
|
| // running the factory method, use the exception as the result.
|
| Handle<Object> result;
|
| - Handle<Object> exception;
|
| + MaybeHandle<Object> exception;
|
| if (!Execution::TryCall(fun,
|
| isolate()->js_builtins_object(),
|
| arraysize(argv),
|
|
|