-
Notifications
You must be signed in to change notification settings - Fork 2.2k
[ASDataController] Remove asyncDataFetching Option, Cleanup #1794
Conversation
078d2f0
to
764c647
Compare
764c647
to
a1465cb
Compare
[node measureWithSizeRange:constrainedSize]; | ||
node.frame = CGRectMake(0.0f, 0.0f, node.calculatedSize.width, node.calculatedSize.height); | ||
CGSize size = [node measureWithSizeRange:constrainedSize].size; | ||
node.frame = { .size = size }; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, is this guaranteed to properly initialize the .origin values? Or are they left uninitialized?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep! C++ will initialize all struct members to 0 by default so {} => CGRectZero
etc.
@Adlai-Holler thank you for including the categories and deprecation flags to maintain compatibility. I reviewed this in quite heavy detail, but I am also partially trusting that there are not material changes subtly within some of the code blocks that were removed from the access data source with block sections. |
@Adlai-Holler the detail is quite interesting on using Singleton objects for index paths only when initialized with the to argument method, thanks for including that. Can you please add a comment where are you added the fork code path, because it is far from obvious why it would be worth the complexity to do so? |
I was doing a deep-dive into this code in preparation for some work, and I saw a bunch of possible improvements. So here they are.
I've tested this thoroughly by hand.