Lines Matching defs:receiver
32 JSArray receiver) {
33 return JSObject::PrototypeHasNoElements(isolate, receiver);
41 inline bool HasOnlySimpleReceiverElements(Isolate* isolate, JSObject receiver) {
42 // Check that we have no accessors on the receiver's elements.
43 if (!HasSimpleElements(receiver)) return false;
44 return JSObject::PrototypeHasNoElements(isolate, receiver);
47 inline bool HasOnlySimpleElements(Isolate* isolate, JSReceiver receiver) {
49 PrototypeIterator iter(isolate, receiver, kStartAtReceiver);
101 Handle<Object> receiver,
105 if (!receiver->IsJSArray()) return false;
106 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
153 Isolate* isolate, Handle<JSReceiver> receiver) {
154 if (receiver->IsJSArray()) {
155 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
165 Object::GetLengthFromArrayLike(isolate, receiver), Nothing<double>());
172 Isolate* isolate, Handle<JSReceiver> receiver, double length) {
173 if (receiver->IsJSArray()) {
174 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
179 return receiver;
184 isolate, receiver, isolate->factory()->length_string(),
190 Handle<JSReceiver> receiver,
201 isolate, receiver, index, value,
209 return *receiver;
213 Isolate* isolate, BuiltinArguments* args, Handle<JSReceiver> receiver,
218 if (!receiver->IsJSObject()) return Just(false);
220 if (!EnsureJSArrayWithWritableFastElements(isolate, receiver, args, 1, 1)) {
224 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
254 if (!isolate->debug()->PerformSideEffectCheckForObject(args.receiver())) {
260 Handle<JSReceiver> receiver;
262 isolate, receiver, Object::ToObject(isolate, args.receiver()));
267 isolate, length, GetLengthProperty(isolate, receiver));
288 if (start_index >= end_index) return *receiver;
300 TryFastArrayFill(isolate, &args, receiver, value, start_index,
302 if (success) return *receiver;
303 return GenericArrayFill(isolate, receiver, value, start_index, end_index);
310 Handle<JSReceiver> receiver;
312 isolate, receiver, Object::ToObject(isolate, args->receiver()));
318 Object::GetLengthFromArrayLike(isolate, receiver));
343 isolate, Object::SetElement(isolate, receiver, length, element,
347 LookupIterator it(isolate, receiver, key);
360 isolate, Object::SetProperty(isolate, receiver,
372 Handle<Object> receiver = args.receiver();
373 if (!EnsureJSArrayWithWritableFastElements(isolate, receiver, &args, 1,
380 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
403 Handle<JSReceiver> receiver;
405 isolate, receiver, Object::ToObject(isolate, args->receiver()));
411 Object::GetLengthFromArrayLike(isolate, receiver));
418 isolate, Object::SetProperty(isolate, receiver,
438 isolate, element, Object::GetPropertyOrElement(isolate, receiver, index));
441 MAYBE_RETURN(JSReceiver::DeletePropertyOrElement(receiver, index,
447 isolate, Object::SetProperty(isolate, receiver,
460 Handle<Object> receiver = args.receiver();
461 if (!EnsureJSArrayWithWritableFastElements(isolate, receiver, nullptr, 0,
465 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
475 if (IsJSArrayFastElementMovingAllowed(isolate, JSArray::cast(*receiver))) {
505 Handle<JSReceiver> receiver) {
506 if (!EnsureJSArrayWithWritableFastElements(isolate, receiver, nullptr, 0,
508 !IsJSArrayFastElementMovingAllowed(isolate, JSArray::cast(*receiver))) {
512 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
517 Handle<JSReceiver> receiver,
522 Object::GetElement(isolate, receiver, 0));
541 JSReceiver::HasProperty(isolate, receiver, from));
549 Object::GetPropertyOrElement(isolate, receiver, from));
554 Object::SetPropertyOrElement(isolate, receiver, to, from_val,
558 MAYBE_RETURN(JSReceiver::DeletePropertyOrElement(receiver, to,
570 MAYBE_RETURN(JSReceiver::DeletePropertyOrElement(receiver, new_length,
576 SetLengthProperty(isolate, receiver, length - 1));
587 Handle<JSReceiver> receiver;
589 isolate, receiver, Object::ToObject(isolate, args.receiver()));
594 isolate, length, GetLengthProperty(isolate, receiver));
600 SetLengthProperty(isolate, receiver, length));
606 if (CanUseFastArrayShift(isolate, receiver)) {
607 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
612 return GenericArrayShift(isolate, receiver, length);
617 DCHECK(args.receiver()->IsJSArray());
618 Handle<JSArray> array = Handle<JSArray>::cast(args.receiver());
1047 bool IterateElementsSlow(Isolate* isolate, Handle<JSReceiver> receiver,
1050 Maybe<bool> maybe = JSReceiver::HasElement(isolate, receiver, i);
1055 isolate, element_value, JSReceiver::GetElement(isolate, receiver, i),
1073 bool IterateElements(Isolate* isolate, Handle<JSReceiver> receiver,
1077 if (receiver->IsJSArray()) {
1078 Handle<JSArray> array = Handle<JSArray>::cast(receiver);
1083 isolate, val, Object::GetLengthFromArrayLike(isolate, receiver), false);
1094 return IterateElementsSlow(isolate, receiver, length, visitor);
1098 !HasOnlySimpleElements(isolate, *receiver)) {
1099 return IterateElementsSlow(isolate, receiver, length, visitor);
1101 Handle<JSObject> array = Handle<JSObject>::cast(receiver);
1131 // have the correct receiver.
1169 // have the correct receiver.
1227 return IterateElementsSlow(isolate, receiver, length, visitor);
1514 Handle<Object> receiver = args.receiver();
1516 isolate, receiver,
1517 Object::ToObject(isolate, args.receiver(), "Array.prototype.concat"));
1518 args.set_at(0, *receiver);
1523 if (V8_LIKELY(receiver->IsJSArray() &&
1524 Handle<JSArray>::cast(receiver)->HasArrayPrototype(isolate) &&
1536 isolate, species, Object::ArraySpeciesConstructor(isolate, receiver));
1724 isolate, O, Object::ToObject(isolate, args.receiver(), kMethodName));
1786 isolate, O, Object::ToObject(isolate, args.receiver(), kMethodName));