1
0
Fork 0
Commit Graph

2 Commits (1d9c06a16984c24d334bcdcf4962724d94b5c79b)

Author SHA1 Message Date
Mike Gerwitz 1d9c06a169
Properly handle error subtype #constructor (#__constructor alias)
Using `#constructor' in place of `#__construct' caused an error attempting
to "redefine" `#__constructor' (once the alias was applied); the system was
making improper assumptions and not accounting for aliases.

In fact, everthing about how this was being done was bad, since adding any
keywords would have thrown it off as well!

* lib/ClassBuilder.js (build): Move ector detection past prop
  parsing.  Check parsed properties instead of raw.
* test/ClassBuilder/ErrorExtendTest.js: Iterate ctor override test on new
    `ctors'.
  (caseSetUp) [ctors]: Add property.
2017-11-04 14:51:29 -04:00
Mike Gerwitz a7e1d2ad70
Error constructor integration into ClassBuilder
This introduces the transparent subtyping.

* doc/classes.texi (Error Subtyping): Section added

* lib/ClassBuilder.js (ClassBuilder): Accepts ErrorCtor instance
  (build): Transparent Error subtyping

* lib/class.js: Provide ErrorCtor instance to ClassBuilder

* test/ClassBuilder/ErrorExtendTest.js: Add test case for transparent error
  subtyping
2016-07-15 00:21:06 -04:00