Mike Gerwitz
fdee02adc9
Combined file now exports {Final,Abstract}Class
2011-05-23 07:12:46 -04:00
Mike Gerwitz
8109d1e32a
Updated abstract documentation in README.md
2011-05-23 07:08:35 -04:00
Mike Gerwitz
d1fbf4cc21
Syntax highlighting for README.md
2011-05-23 07:01:58 -04:00
Mike Gerwitz
af411edf43
Implemented GH#7 - Implement assert.deepEqual() client-side
2011-05-22 22:48:46 -04:00
Mike Gerwitz
fe02c78f1d
Fixed tests containing unknwon keywords
...
- Broken from previous commit
2011-05-22 22:21:32 -04:00
Mike Gerwitz
76bc7361d3
Implemented GH#2 - Keyword restrictions; throw exception when unknown keywords are used
2011-05-22 22:11:57 -04:00
Mike Gerwitz
cf344186fc
Implement GH#1 Provide useful error when attempting to extend from non-constructor
2011-05-22 21:54:41 -04:00
Mike Gerwitz
8c62ee021c
Added support for final subtypes
2011-05-22 21:35:29 -04:00
Mike Gerwitz
a67d704837
Added support for named abstract subclasses
2011-05-22 21:05:46 -04:00
Mike Gerwitz
db9de2712e
Added class_abstract docblocks
2011-05-22 19:15:19 -04:00
Mike Gerwitz
e0de030cee
Implemented AbstractClass
...
- Some of this functionality requires further refactoring
2011-05-22 16:08:48 -04:00
Mike Gerwitz
623c3df429
Reorganized abstract tests
2011-05-22 11:33:11 -04:00
Mike Gerwitz
b359906aa3
Refactored method validations into separate method
2011-05-22 11:25:15 -04:00
Mike Gerwitz
9690663d1c
Added support for final classes
...
- This commit was originally many. Unfortunately, certain Git objects became
corrupt shortly after my 500th commit due to HDD issues. Due to the scope, I
was unable to recover the set of commits I needed (after an hour of trying
every method).
- Fortunately, vim's swap files came to the rescue. Had I been able to
properly shut down my PC, I would have been rather frustrated.
2011-05-22 11:19:51 -04:00
Mike Gerwitz
0ef016600c
Added static, const and final mention to README.md
2011-05-19 19:54:21 -04:00
Mike Gerwitz
6e1d796092
Implemented constant properties
2011-05-19 19:48:51 -04:00
Mike Gerwitz
2d91a221aa
Const keyword now results in static property
2011-05-19 19:07:31 -04:00
Mike Gerwitz
030bdef821
Static keyword cannot be used with const for properties
2011-05-19 18:30:55 -04:00
Mike Gerwitz
f3c1d0f9af
Methods cannot be declared as constant
2011-05-19 07:54:51 -04:00
Mike Gerwitz
c29cf0e66d
Util unnecessary in final test case
2011-05-19 07:52:29 -04:00
Mike Gerwitz
0c5293991c
Disallowed use of final keyword with properties
2011-05-18 20:51:02 -04:00
Mike Gerwitz
5182ed3e31
Added late static binding documentation
2011-05-18 20:42:25 -04:00
Mike Gerwitz
54e9c14051
Added late static binding tests
...
- This simply tests a very important consequence of the existing implementation
- Regression test
2011-05-18 20:42:25 -04:00
Mike Gerwitz
f4b31f2639
Corrected member_builder-prop tests
...
- Doesn't properly add method; added as property
2011-05-18 20:42:18 -04:00
Mike Gerwitz
f47fcf4f46
Simplified and enhanced util.freeze()
2011-05-15 19:12:24 -04:00
Mike Gerwitz
4c74f2a1f2
Added final keyword for methods
2011-05-15 19:11:23 -04:00
Mike Gerwitz
edac0e1667
Added static property documentation
2011-05-15 09:38:24 -04:00
Mike Gerwitz
c64c6bb964
Added static method documentation
2011-05-15 09:21:10 -04:00
Mike Gerwitz
18e72c3124
Began adding static documentation
2011-05-15 08:52:00 -04:00
Mike Gerwitz
61c29c61dd
Added tests to ensure private static getters/setters are properly implemented
2011-05-14 11:22:27 -04:00
Mike Gerwitz
69c5f8b7a5
Corrected public static getter/setter sub-subtype inheritance test
2011-05-14 11:07:59 -04:00
Mike Gerwitz
3185cb13d5
Added tests to ensure protected static getters/setters operate as intended
2011-05-14 11:07:51 -04:00
Mike Gerwitz
d59bac0978
Added test to ensure users can't be tricky and try to break static property encapsulation
2011-05-13 21:27:53 -04:00
Mike Gerwitz
775438c1b6
Implemented private static properties
2011-05-13 00:55:09 -04:00
Mike Gerwitz
9b20cdff48
Initial concept for protected static property access
2011-05-12 00:25:34 -04:00
Mike Gerwitz
9067bbf0cf
Static property accessor method is no longer enumerable
2011-05-11 20:53:43 -04:00
Mike Gerwitz
fa8d1bebe1
Implemented private static methods
2011-05-11 20:10:10 -04:00
Mike Gerwitz
a303adddea
Added tests to ensure that static method overrides are supported
2011-05-11 18:36:49 -04:00
Mike Gerwitz
9822894eae
Protected static methods are now inherited by subtypes
2011-05-11 17:56:48 -04:00
Mike Gerwitz
d542f9d803
Extendig concrete classes should no longer consume an instance id unnecessarily
...
- This is not tested because it would be testing too closely to the implementation
2011-05-10 23:35:43 -04:00
Mike Gerwitz
6325b0cf17
[Cleanup] Removed unused arguments from concrete ctor
2011-05-10 23:32:13 -04:00
Mike Gerwitz
91a47e4dcd
[Bug Fix] Concrete class constructor is no longer invoked on extend
...
- The ctor must be instantiated for use in the prototype chain
- This was working in the past, but apparently no test existed for it and
refactoring broke it
2011-05-10 23:32:13 -04:00
Mike Gerwitz
3c774a7b16
Implemented protected static members within static methods
...
- Still not inheritence
2011-05-10 19:54:23 -04:00
Mike Gerwitz
a246dd67e0
Began adding protected static members (supported for instance methods)
...
- No inheritance support yet
2011-05-09 23:09:32 -04:00
Mike Gerwitz
56ba57511b
Minor doc corrections for static implementation
2011-05-09 18:33:44 -04:00
Mike Gerwitz
c980a59273
Comment correction for static members
2011-04-14 20:28:42 -04:00
Mike Gerwitz
26cf32abe5
Enhanced static property setter to support setting to both undefined and null values
2011-04-13 23:53:03 -04:00
Mike Gerwitz
969687e770
Added strictEqual to client-side assertions
2011-04-13 23:48:15 -04:00
Mike Gerwitz
462671cfba
Can no longer set values of undeclared static properties
2011-04-13 23:45:26 -04:00
Mike Gerwitz
7e53df0e84
Static property setter now returns calling class
2011-04-13 23:35:54 -04:00