Mike Gerwitz
e1bb48a8d9
Added visibility test to ensure supertypes do not have access to private members of subtypes when invoked
2011-03-13 15:39:14 -04:00
Mike Gerwitz
984a14b087
Added more detailed documentation regarding the class_instance object
2011-03-13 14:51:40 -04:00
Mike Gerwitz
e03c081cfd
Fixed bug that made private members of a supertype inaccessible to methods that have not been overridden by a subtype
...
- In doing so, abandoned the super identifier (sid) for a more elegant solution with class ids (cid's)
- This permits fast and easy private member swapping via getMethodInstance() in class.js
2011-03-13 04:51:00 -04:00
Mike Gerwitz
e4e8900a9f
Storing each supertype's private members in a separate object to prepare for future change
...
- sid = super identifier
2011-03-13 03:55:43 -04:00
Mike Gerwitz
6b374902ae
Separated private members into a separate object (propobj) to prepare for future modifications
...
- This incurs a performance hit for accessing protected members, and even further for public, internally
- But speeds up access to private members, likely due to there being less members
2011-03-12 23:48:38 -05:00
Mike Gerwitz
47a6ba2727
Added additional items to TODO for v0.1.0
2011-03-12 23:02:22 -05:00
Mike Gerwitz
540d8a4f00
Altered Makefile to ensure the combine test is performed after all others
2011-03-12 12:07:07 -05:00
Mike Gerwitz
e83225f916
Merge branch 'master' into perf/master
2011-03-11 20:00:08 -05:00
Mike Gerwitz
342dfd63d6
Extra tab in Makefile
2011-03-11 20:00:04 -05:00
Mike Gerwitz
be9e5796c1
Merge branch 'master' into perf/master
2011-03-11 19:58:30 -05:00
Mike Gerwitz
f572e53e9d
Distinction between JS and shell tests unnecessary in 'find'
2011-03-11 19:58:24 -05:00
Mike Gerwitz
3c3d927e65
Merge branch 'master' into perf/master
...
Conflicts:
Makefile
2011-03-11 19:55:29 -05:00
Mike Gerwitz
672ef82aca
Altered Makefile to support parallel tests
2011-03-11 19:53:05 -05:00
Mike Gerwitz
db5a5bac58
Reformatted Makefile to support parallel processing of performance tests
2011-03-11 19:47:00 -05:00
Mike Gerwitz
05e249def4
Added result explanations to method invocation performance tests
2011-03-11 19:27:07 -05:00
Mike Gerwitz
5a420fae4e
Added perf tests for invoking class methods
2011-03-11 19:20:05 -05:00
Mike Gerwitz
d2aa24ef66
Added performance tests for setting properties, internally and externally
2011-03-11 19:16:52 -05:00
Mike Gerwitz
61d78179a3
Added member redeclaration bug fix to TODO
2011-03-11 19:16:11 -05:00
Mike Gerwitz
311e39d67c
Added performance test for reading properties, internal and external
2011-03-11 19:14:10 -05:00
Mike Gerwitz
50fef4afdb
Merge branch 'master' into perf/master
2011-03-11 18:49:50 -05:00
Mike Gerwitz
caddb2b362
Updated TODO with targets for v0.1.0
2011-03-11 18:49:26 -05:00
Mike Gerwitz
a8767a1da0
Added property/method class definition performance tests
2011-03-10 23:32:33 -05:00
Mike Gerwitz
cdc88bea4c
Added count to perf output to calculate individual cost
2011-03-10 23:07:52 -05:00
Mike Gerwitz
689a67405b
Added performance tests to Makefile
2011-03-10 22:55:07 -05:00
Mike Gerwitz
37bf2fa353
Began adding performance tests
2011-03-10 22:43:36 -05:00
Mike Gerwitz
e0fb37daa0
Overridden methods now property return instance when returning 'this'
...
- There may be a cleaner way to do this. This is a quick fix.
2011-03-10 12:40:55 -05:00
Mike Gerwitz
84363aca45
Added test to ensure correct instance is returned when returning 'this' from a parent method
2011-03-10 12:24:59 -05:00
Mike Gerwitz
7427958ec0
Returning 'this' from a method will now return the object instance, not the internal property object
2011-03-10 12:19:39 -05:00
Mike Gerwitz
22220cd2da
README corrections
2011-03-07 23:21:15 -05:00
Mike Gerwitz
354061cd5f
Continuing to use BASH for now for rmtrail test
2011-03-07 23:16:14 -05:00
Mike Gerwitz
a23d413a73
Updated README and TODO with visibility status
2011-03-07 23:13:06 -05:00
Mike Gerwitz
960be880ab
Merge branch 'master' into visibility/master
2011-03-07 23:09:02 -05:00
Mike Gerwitz
8de036ec46
Basic package.json
2011-03-07 23:08:01 -05:00
Mike Gerwitz
ab8faad53f
/bin/{bash => sh} to support system with only sh installed
...
- e.g. FreeBSD
- Nothing in the scripts actually needs BASH anyway
2011-03-07 22:54:59 -05:00
Mike Gerwitz
841b5ac5a5
Replaed all __{define,lookup}[GS]etter__'s with defineProperty/getOwnPropertyDescriptor
2011-03-07 22:44:47 -05:00
Mike Gerwitz
df409c1e58
Property object now properly falls back in IE8
2011-03-07 09:05:05 -05:00
Mike Gerwitz
00378da630
Merge branch 'master' into visibility/master
2011-03-07 09:03:34 -05:00
Mike Gerwitz
fbc58384b4
Provided a more accurate mechanism for detecting Object.defineProperty (tests in IE8 fixed)
2011-03-07 09:03:03 -05:00
Mike Gerwitz
522165fb6a
No longer clearing test name output on successful browser test
2011-03-07 08:29:18 -05:00
Mike Gerwitz
4e2f174667
Added test for good measure to ensure class instances do not share protected member values
2011-03-07 00:19:56 -05:00
Mike Gerwitz
e05a65d5fa
Initial concept of inheriting protected/private members
2011-03-07 00:14:43 -05:00
Mike Gerwitz
f692ebcdfd
Once again refactored propobj.setup(), removing unnecessary argument and separating into inheritance and non-inheritance methods
2011-03-07 00:10:12 -05:00
Mike Gerwitz
d1be2d5351
Refactored propbj.setup() to be a bit more managable
2011-03-06 23:56:19 -05:00
Mike Gerwitz
30bfde50cd
Tada! Private members.
2011-03-06 23:03:39 -05:00
Mike Gerwitz
c1765cd720
Using visibility fallback for browsers that do not support getters/setters
2011-03-06 22:43:14 -05:00
Mike Gerwitz
df2943b5a1
Replaced __define[GS]etter__ with defineProperty for prop proxy
2011-03-06 22:16:50 -05:00
Mike Gerwitz
3651e31d20
Refactored property proxying into its own method
2011-03-06 21:48:18 -05:00
Mike Gerwitz
e463d2c411
Began factoring property instance object out of class module
2011-03-06 18:19:19 -05:00
Mike Gerwitz
5d8fdc5204
Merge branch 'master' into visibility/master
...
Conflicts:
lib/class.js
2011-03-06 12:39:26 -05:00
Mike Gerwitz
517b2be464
Fix toString() override for IE
...
- All tests once again pass on IE6
2011-03-06 12:38:31 -05:00