Home | History | Annotate | Download | only in builtins

Lines Matching refs:receiver

74                                               JSArray* receiver) {
75 return JSObject::PrototypeHasNoElements(isolate, receiver);
84 JSObject* receiver) {
85 // Check that we have no accessors on the receiver's elements.
86 if (!HasSimpleElements(receiver)) return false;
87 return JSObject::PrototypeHasNoElements(isolate, receiver);
90 inline bool HasOnlySimpleElements(Isolate* isolate, JSReceiver* receiver) {
92 PrototypeIterator iter(isolate, receiver, kStartAtReceiver);
104 Handle<Object> receiver,
107 if (!receiver->IsJSArray()) return false;
108 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
163 Execution::Call(isolate, function, args.receiver(), argc, argv.start()));
169 Handle<Object> receiver = args.receiver();
170 if (!EnsureJSArrayWithWritableFastElements(isolate, receiver, &args, 1)) {
175 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
210 Node* receiver = args.GetReceiver();
216 receiver, context, CodeStubAssembler::FastJSArrayAccessMode::ANY_ACCESS,
225 Node* map = assembler.LoadMap(receiver);
260 FAST_SMI_ELEMENTS, context, receiver, args, arg_index, &smi_transition);
272 Node* length = assembler.LoadJSArrayLength(receiver);
275 assembler.CallRuntime(Runtime::kSetProperty, context, receiver, length, arg,
280 Node* map = assembler.LoadMap(receiver);
301 FAST_ELEMENTS, context, receiver, args, arg_index, &default_label);
308 assembler.BuildAppendJSArray(FAST_DOUBLE_ELEMENTS, context, receiver,
321 Node* length = assembler.LoadJSArrayLength(receiver);
324 assembler.CallRuntime(Runtime::kSetProperty, context, receiver, length, arg,
329 Node* map = assembler.LoadMap(receiver);
343 [&assembler, receiver, context](Node* arg) {
344 Node* length = assembler.LoadJSArrayLength(receiver);
345 assembler.CallRuntime(Runtime::kSetProperty, context, receiver,
349 args.PopAndReturn(assembler.LoadJSArrayLength(receiver));
363 Handle<Object> receiver = args.receiver();
364 if (!EnsureJSArrayWithWritableFastElements(isolate, receiver, nullptr, 0)) {
368 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
378 if (IsJSArrayFastElementMovingAllowed(isolate, JSArray::cast(*receiver))) {
394 Handle<Object> receiver = args.receiver();
395 if (!EnsureJSArrayWithWritableFastElements(isolate, receiver, nullptr, 0) ||
396 !IsJSArrayFastElementMovingAllowed(isolate, JSArray::cast(*receiver))) {
399 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
414 Handle<Object> receiver = args.receiver();
415 if (!EnsureJSArrayWithWritableFastElements(isolate, receiver, &args, 1)) {
418 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
544 Node* receiver = Parameter(ForEachDescriptor::kReceiver);
552 GotoIf(WordEqual(receiver, NullConstant()), &throw_null_undefined_exception);
553 GotoIf(WordEqual(receiver, UndefinedConstant()),
560 Node* o = CallStub(CodeFactory::ToObject(isolate()), context, receiver);
672 Handle<Object> receiver = args.receiver();
677 if (receiver->IsJSArray()) {
679 JSArray* array = JSArray::cast(*receiver);
689 } else if (receiver->IsJSObject() &&
690 GetSloppyArgumentsLength(isolate, Handle<JSObject>::cast(receiver),
695 DCHECK(JSObject::cast(*receiver)->HasFastElements() ||
696 JSObject::cast(*receiver)->HasFastArgumentsElements());
734 Handle<JSObject> object = Handle<JSObject>::cast(receiver);
741 Handle<Object> receiver = args.receiver();
743 !EnsureJSArrayWithWritableFastElements(isolate, receiver, &args, 3) ||
745 !Handle<JSArray>::cast(receiver)->HasArrayPrototype(isolate) ||
750 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
1177 bool IterateElementsSlow(Isolate* isolate, Handle<JSReceiver> receiver,
1180 Maybe<bool> maybe = JSReceiver::HasElement(receiver, i);
1185 isolate, element_value, JSReceiver::GetElement(isolate, receiver, i),
1203 bool IterateElements(Isolate* isolate, Handle<JSReceiver> receiver,
1207 if (receiver->IsJSArray()) {
1208 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
1213 isolate, val, Object::GetLengthFromArrayLike(isolate, receiver), false);
1219 return IterateElementsSlow(isolate, receiver, length, visitor);
1222 if (!HasOnlySimpleElements(isolate, *receiver) ||
1224 return IterateElementsSlow(isolate, receiver, length, visitor);
1226 Handle<JSObject> array = Handle<JSObject>::cast(receiver);
1247 // have the correct receiver.
1282 // have the correct receiver.
1333 return IterateElementsSlow(isolate, receiver, length, visitor);
1611 Handle<Object> receiver = args.receiver();
1613 if (receiver->IsNullOrUndefined(isolate)) {
1620 isolate, receiver, Object::ToObject(isolate, args.receiver()));
1621 args[0] = *receiver;
1626 if (V8_LIKELY(receiver->IsJSArray() &&
1627 Handle<JSArray>::cast(receiver)->HasArrayPrototype(isolate) &&
1638 isolate, species, Object::ArraySpeciesConstructor(isolate, receiver));
2037 // render our assumptions about the receiver being a fast JSArray and the
2321 Node* receiver = assembler.Parameter(0);
2331 assembler.GotoIf(assembler.TaggedIsSmi(receiver), &if_isnotobject);
2332 var_array.Bind(receiver);
2333 var_map.Bind(assembler.LoadMap(receiver));
2341 Node* result = assembler.CallStub(callable, context, receiver);
2835 // The {receiver} is not a valid JSArrayIterator.