Beter table/collection update history (#2562)

- Introduce thread-safe ASEventLog
- ASCollectionNode and ASTableNode share their event log with their ASDataController. The controller uses it to log change set submitting and finishing events.
- ASCollectionNode and ASTableNode print their data source and delegate in their debug description.
This commit is contained in:
Huy Nguyen
2016-11-09 00:44:49 +00:00
committed by Adlai Holler
parent 06f5754b37
commit fb6d1830a0
22 changed files with 366 additions and 111 deletions

View File

@@ -1,5 +1,5 @@
//
// ASObjectDescriptions.h
// ASObjectDescriptionHelpers.h
// AsyncDisplayKit
//
// Created by Adlai Holler on 9/7/16.
@@ -26,7 +26,7 @@ NS_ASSUME_NONNULL_BEGIN
/**
* Your base class should conform to this and override `-description`
* to call `[self propertiesForDescription]` and use `ASObjectDescriptionMake`
* to return a string. Subclasses of this base class just need to override
* to return a string. Subclasses of this base class just need to override
* `propertiesForDescription`, call super, and modify the result as needed.
*/
@protocol ASDescriptionProvider
@@ -36,6 +36,8 @@ NS_ASSUME_NONNULL_BEGIN
ASDISPLAYNODE_EXTERN_C_BEGIN
NSString *ASGetDescriptionValueString(id object);
/// Useful for structs etc. Returns e.g. { position = (0 0); frame = (0 0; 50 50) }
NSString *ASObjectDescriptionMakeWithoutObject(NSArray<NSDictionary *> * _Nullable propertyGroups);