Jason Orendorff
fae53e811b
Bug 1142784, part 3 - Change js::DefinePropertyOp and a few property-defining functions to use PropertyDescriptor rather than separate (value, attrs, getter, setter) arguments. r=Waldo.
...
--HG--
extra : rebase_source : 77cca13d3d8e33831cd5cb82129ede3645e58374
2015-02-28 11:23:44 -06:00
Phil Ringnalda
c4745d28b1
Backed out 9 changesets (bug 1142775, bug 1139683, bug 1143810, bug 1142761, bug 1142784, bug 1142794, bug 1144819) for widespread bustage
...
CLOSED TREE
Backed out changeset 7613fc978d36 (bug 1142794)
Backed out changeset e5f0cb31263d (bug 1142784)
Backed out changeset dcd0af73ac84 (bug 1142784)
Backed out changeset 034f9c8e79ee (bug 1142784)
Backed out changeset ce0ee37e3ca9 (bug 1142775)
Backed out changeset 1519b8f2bbba (bug 1142761)
Backed out changeset 26fd55677841 (bug 1139683)
Backed out changeset 7ebc76a450c3 (bug 1144819)
Backed out changeset 92adb459d519 (bug 1143810)
2015-03-22 09:34:25 -07:00
Jason Orendorff
735dca6f1b
Bug 1142794 - Change 'receiver' argument to SetProperty functions and ProxyHandler::set methods to be a HandleValue. r=Waldo.
...
Also: Change signature of these functions and methods to all have the same arguments in the same order: (cx, obj, id, v, receiver). Also change v from MutableHandleValue to HandleValue.
There is no change in behavior.
In fact the new error message `JSMSG_SET_NON_OBJECT_RECEIVER` is
impossible to trigger from scripts for now, I think (after re-reading
the whole patch with this in mind). JS_ForwardSetPropertyTo is the only
way to get a non-object receiver into the engine, but no caller
currently does so.
We're installing new pipes here, and they should work, but for now it's
the same cold water flowing through as before. Actually hooking up the
hot water is left for another bug (one with tests, not to put too fine a
point on it).
Notes:
* InvokeGetterOrSetter had to be split into two functions:
InvokeGetter takes a MutableHandleValue out-param,
InvokeSetter a HandleValue in-param.
* Watchpoints can still tamper with values being assigned. So can
JSSetterOps. I'm pleased we can support this craziness in a way that
doesn't have to spread via the type system to encompass the entire
codebase.
* Change in GlobalObject::setIntrinsicValue is not really a change.
Yes, it asserted before, but an exception thrown during self-hosting
initialization is not going to go unnoticed either.
* Since the receiver argument to js::SetProperty() is at the end now, it
makes sense for it to be optional. Some callers look nicer.
--HG--
extra : rebase_source : 68cd15627a62728061e663706cb1ff8c7bb292a0
2015-03-01 13:16:19 -06:00
Jason Orendorff
a5c5338e0f
Bug 1142784, part 3 - Change js::DefinePropertyOp and a few property-defining functions to use PropertyDescriptor rather than separate (value, attrs, getter, setter) arguments. r=Waldo.
...
--HG--
extra : rebase_source : a177bc1d8991f24652b4e629da5eaa52d9d4a59c
2015-02-28 11:23:44 -06:00
Tooru Fujisawa
75d9d40a66
Bug 1079919
- Part 0: Add RegExp ClassSpec. r=bholley
2015-03-18 18:22:05 +09:00
Jason Orendorff
cd9a74e351
Bug 828137, part 1 - Make Object.defineProperty fail on window elements. r=bz.
...
--HG--
extra : rebase_source : 8bfc7e8ebd9219511a6119bcefd2c784dc9a1682
2015-02-11 11:38:36 -06:00
Jason Orendorff
eedeed1e47
Bug 1141329, prelude - Make ObjectOpResult pointer-sized to fix amazingly bogus code and assertions in IonCaches, introduced by rev 0712a3d4b79c. r=efaust.
...
--HG--
extra : rebase_source : 1d82219b61105088cf27154c6200e647091a36e0
2015-03-10 12:22:30 -05:00
Carsten "Tomcat" Book
bca0a2c02e
Backed out changeset df26246112ad (bug 828137)
2015-03-09 16:49:34 +01:00
Jason Orendorff
659c8de550
Bug 828137, part 1 - Make Object.defineProperty fail on window elements. r=bz.
...
--HG--
extra : rebase_source : ececca61c52296fb41e26e277a6bfa0d5eca63bb
extra : amend_source : 4229cb2652c2eb5b4347ebe043eccf1c0515e62a
2015-02-11 11:38:36 -06:00
Jason Orendorff
29bfe274bb
Bug 1113369, part 6 - [[PreventExtensions]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
...
--HG--
extra : rebase_source : 08631a46c776f6d9e60794ad61308240dde3d94d
2015-02-04 12:01:01 -06:00
Jason Orendorff
cc85989b86
Bug 1113369, part 5 - [[Delete]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
...
--HG--
extra : rebase_source : 64b0e44bbb7673d139fab920243566db4844b517
2015-02-04 10:20:04 -06:00
Jason Orendorff
9a17368e8e
Bug 1113369, part 4 - [[Set]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
...
--HG--
extra : rebase_source : ee44b9a7c933addd7f26643443900843b984587b
2015-02-03 19:51:40 -06:00
Jason Orendorff
de9e3b99dc
Bug 1113369, part 3 - [[DefineOwnProperty]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
...
Add an ObjectOpResult out-param for DefineProperty functions everywhere. We leave a few js::DefineProperty() convenience functions with no *result out-param. These have strict behavior: that is, they automatically check the result and throw if it is false. In bug 1125624 these strict signatures may end up being called DefinePropertyOrThrow, as that is what the spec calls it.
--HG--
extra : rebase_source : 36439a8fa433c453f63b02c93fceaf0d8b9e9626
2015-01-30 11:37:07 -06:00
Jason Orendorff
ce09b0bfc5
Bug 1113369, part 2 - js::SetArrayLength ObjectOpResult support. r=Waldo.
...
--HG--
extra : rebase_source : fa947b315a7ede20a16893e3e44dd4118665c777
2015-01-29 23:02:26 -06:00
Jason Orendorff
844535d277
Bug 1113369, part 1½ - Avoid regressing error messages by adding obj to the ObjectOpResult methods that could throw a TypeError. r=Waldo.
...
--HG--
extra : rebase_source : 5494b04d773badadc2c33fd90ae67cad90aa88d3
2015-02-18 18:49:17 -06:00
Jason Orendorff
63891dbbf5
Bug 1113369, part 1 - Introduce JS::ObjectOpResult and use it in js::StandardDefineProperty. r=Waldo.
...
In general, jsobj.h will offer, for each standard internal method that returns a boolean value indicating success/failure, signatures with a JS::ObjectOpResult& out-parameter and signatures without it. The ones without will throw a TypeError on failure (that is, the behavior will be "strict").
--HG--
extra : rebase_source : fbf30988ed48412a10168e359848940123035e0f
2015-02-02 17:06:47 -06:00
Jason Orendorff
85abad51f2
Bug 1130576 - Rename JSPropertyOp -> JSGetterOp and JSStrictPropertyOp -> JSSetterOp. r=efaust.
...
--HG--
extra : rebase_source : 44edb174028da6dbd637975e6358112060de535b
extra : amend_source : dd79490550af1370dac037057bdc2c06cb4c71f5
2015-01-30 13:56:15 -06:00
Brian Hackett
d78cece7dd
Bug 1121554 - Include receiver argument in setProperty hooks, r=jorendorff.
2015-02-14 08:50:48 -07:00
Tom Schuster
797b78de4b
Bug 1124934 - Add a HasProperty ObjectOp. r=jorendorff
2015-02-13 12:20:02 +01:00
Tom Schuster
43324bd36f
Bug 1125437 - Get rid of SetPropertyAttributes and use DefineProperty to follow ES6 specification. r=efaust
2015-02-11 23:40:47 +01:00
Jason Orendorff
8f9fef2147
Bug 1127121 - Remove property key type splitting in ObjectOps. r=bhackett.
...
--HG--
extra : rebase_source : dab65791e3efc9fc625365b6aa5dc26d5cad19fb
2015-01-28 17:12:44 -06:00
Tom Schuster
c70b84f630
Bug 1111243 - Implement ES6 proxy behavior for IsArray. r=efaust
2015-01-25 21:42:10 +01:00
Tom Schuster
7f95393f87
Bug 1122619 - Remove getPropertyAttributes object ops. r=jorendorff
2015-01-24 16:38:08 +01:00
Tom Schuster
269e651092
Bug 1122552 - Introduce [[GetOwnProperty]] object op. r=jorendorff,bz
2015-01-22 17:17:26 +01:00
ProgramFOX
df5586d909
Bug 1031203 - Implemented float64x2. r=bbouvier
2015-01-16 17:17:37 +01:00
Ryan VanderMeulen
c04595cbcf
Backed out changesets 178c7164a3cd and 9a7ee9cb2247 (bug 1031203) for bustage.
...
CLOSED TREE
--HG--
extra : amend_source : 89f9ffb338e7305ae3c3c7f100744570aec95d06
2015-01-15 14:42:54 -05:00
ProgramFOX
ce02406f0a
Bug 1031203 - Implemented float64x2. r=bbouvier
2015-01-14 19:21:22 +01:00
Jason Orendorff
e1ed44a395
Bug 1112778, part 10 - Rename the remaining nonstandard internal methods, such as JSObject::getGenericAttributes -> js::GetPropertyAttributes. r=Waldo.
...
--HG--
extra : rebase_source : ca12f2f784cacbec9721c07a1b7e61f72687fb53
extra : amend_source : ded50e2f93b4027dc2ec94198826393b2349c0f7
2014-12-18 13:28:06 -06:00
Masatoshi Kimura
bf312ad056
Bug 1120062 - Part 1: Remove most Nullptr.h includes. r=waldo
2015-01-11 11:34:52 +09:00
Terrence Cole
91d590c9fb
Bug 1085597 - Allow objects with finalization and move ops to be nursery allocated; r=jonco
...
--HG--
extra : rebase_source : 14ea3e14ded4dcde2ba1aa2f887b9a75750331a2
2014-10-23 13:49:17 -07:00
Tom Schuster
0c4c1b681f
Bug 1097267 - Change to the simpler enumerate hook in the js engine. r=jorendorff
2014-12-11 19:31:10 +01:00
Jason Orendorff
92f1bf16c5
Bug 1103368, part 5 - Make Class::getProperty and setProperty nullable instead of needing stub functions. Never store stub functions in JSPropertyDescriptors. r=bhackett.
...
--HG--
extra : rebase_source : a44070dd6155426ef6026c1575116f90b5fdac0c
extra : amend_source : 8d8fcf05dfd5fdf214a39501663347a6d6b56463
2014-11-22 12:23:39 -06:00
Boris Zbarsky
4e904df02d
Bug 1012798 part 1. Add one more available reserved slot on globals, because we need it for Window. r=jorendorff
2014-12-09 14:44:37 -05:00
Jan de Mooij
88b1d4572f
Bug 1094255 - Optimize GetElements on NodeLists to make fun.apply(x, nodeList) faster. r=bz,evilpie
2014-11-11 11:56:44 +01:00
Tom Schuster
cc421a900c
Bug 993026 - Simplify JS resolve hook. r=jorendorff
2014-11-08 01:07:12 +01:00
Tom Schuster
2c44e0efbc
Bug 1091900 - Remove iteratorObject hook. r=jorendorff
...
* * *
Bug 1091900 - Fix build on CLOSED TREE
2014-11-05 20:36:49 +01:00
Carsten "Tomcat" Book
f54f0723f9
Backed out changeset dc265cc31095 (bug 1091900)
2014-11-06 09:11:18 +01:00
Tom Schuster
999d8504a5
Bug 1091900 - Remove iteratorObject hook. r=jorendorff
2014-11-05 20:36:49 +01:00
Jeff Walden
fffb54d187
Bug 712939 - Replace a bunch of JS_STATIC_ASSERTs with static_assert. r=jandem
...
--HG--
extra : rebase_source : 4205bda533538d866b8facd669b11cb40e2f02e9
2014-10-22 15:17:38 -07:00
Jon Coppeard
27ce20abe8
Bug 650161 - Fix crashes moving partially initialized DOM objects r=bz
2014-10-28 10:18:36 +00:00
Jon Coppeard
a3adff24a8
Bug 650161 - Relocate global objects (browser changes) r=bholley
2014-10-20 09:07:43 +01:00
Jon Coppeard
2013670e0e
Bug 650161 - We don't need an objectMoved hook for global objects r=terrence
2014-09-29 09:50:17 +01:00
Terrence Cole
db9616cb01
Bug 1064346 - JSFunction's extended attributes expect POD-style initialization. r=billm
2014-09-10 15:42:36 -07:00
Jeff Walden
3c33ef9a25
Bug 896116 - Morph the dependent-JSProtoKey system to explicitly store a JSProtoKey, rather than relying on a system where a single class represents the parent and dependent both. Also convert error objects (Error, RangeError, &c.) to be represented by multiple classes, not a single one. r=bholley, r=till
...
--HG--
extra : rebase_source : 1d1913c49ae58be86e991077bda96684c6afb941
2014-09-18 20:06:32 -07:00
Lars T Hansen
ef7ed4ebde
Bug 1054882 - Rollup patch. r=till, r=sstangl, r=jorendorff
2014-09-16 18:45:31 +02:00
Eric Faust
385660b12e
Bug 966518 - Part 0: Make proxy callability into a trap, rather than a class check. (r=bholley, r=djvj, r=peterv)
2014-09-10 15:52:36 -07:00
Chris Peterson
d126c3c24f
Bug 1063962 - Replace jschar typedef with C++11 char16_t type. r=jandem
2014-07-21 21:43:21 -07:00
Jon Coppeard
9f938c20cc
Bug 650161 - Add a class hook that's called when an object is moved r=terrence
2014-09-02 11:07:22 +02:00
Bobby Holley
5e44b4c25a
Bug 1050340 - Handle object and array. r=luke
2014-08-18 14:18:39 -07:00
Bobby Holley
f69cb3da4a
Bug 1050340 - Handle maps and sets. r=luke
2014-08-18 14:18:39 -07:00