Changeset [e2ead5625610507440e684e41f0d706c82690186] by Aparajita Fishman
Revision e2ead5625610507440e684e41f0d706c82690186,
committed by Aparajita Fishman
· April 3rd, 2012 @ 07:16 PM
Collection KVC fixes, nextObject correctness
- Moved common CPArray/CPSet collection KVC operators to _CPCollectionKVCOperators.
- Implemented KVC operator dispatch using Objective-J.
- Fixed infinite loop with empty collection in @min, @max and @sum operators.
- Correctly return valueForUndefinedKey when necessary.
- valueForUndefinedKey reason uses raw description for consistency, class' overridden description may not helpful at all.
- Don't create a forwarder for @ operators with property paths.
- Fixed CPSet -valueForKeyPath to correctly deal with nil/undefined/empty values.
- Added tests for collection KVC operators.
- enumerator -nextObject should always compare against nil for clarity, correctness, and consistency. https://github.com/cappuccino/cappuccino/commit/e2ead5625610507440e...
30 changed files
-
A
Foundation/_CPCollectionKVCOperators.j -
M
AppKit/CPFlashView.j -
M
AppKit/CPMenu/_CPMenuManager.j -
M
AppKit/CPTableView.j -
M
AppKit/CPTheme.j -
M
AppKit/CPView.j -
M
AppKit/Cib/CPCib.j -
M
AppKit/Cib/_CPCibObjectData.j -
M
AppKit/Platform/DOM/CPPlatformWindow+DOM.j -
M
CommonJS/lib/cappuccino/cib-analysis-tools.j -
M
Foundation/CPArray+KVO.j -
M
Foundation/CPCharacterSet.j -
M
Foundation/CPDictionary.j -
M
Foundation/CPKeyValueCoding.j -
M
Foundation/CPKeyValueObserving.j -
M
Foundation/CPKeyedArchiver.j -
M
Foundation/CPNotificationCenter.j -
M
Foundation/CPPredicate/CPComparisonPredicate.j -
M
Foundation/CPPredicate/_CPAggregateExpression.j -
M
Foundation/CPSet+KVO.j -
M
Foundation/CPURLConnection.j -
M
Foundation/CPWebDAVManager.j -
M
Tests/Foundation/CPKVCArrayTest.j -
M
Tests/Foundation/CPKVOTest.j -
M
Tests/Foundation/CPKeyValueCodingTest.j -
M
Tests/Foundation/CPSetTest.j -
M
Tools/capp/Configuration.j -
M
Tools/capp/Generate.j -
M
Tools/nib2cib/NSNibConnector.j -
M
Tools/nib2cib/NSToolbar.j