mirror of
https://github.com/Instagram/IGListKit
synced 2026-04-21 13:37:19 +00:00
Summary: ## Changes in this pull request Updates the IGListKit docs to the latest API spec in v5.2.0 ### Checklist - [x] All tests pass. Demo project builds and runs. - [x] I added tests, an experiment, or detailed why my change isn't tested. - [x] I added an entry to the `CHANGELOG.md` for any breaking changes, enhancements, or bug fixes. - [x] I have reviewed the [contributing guide](https://github.com/Instagram/IGListKit/blob/main/.github/CONTRIBUTING.md) Pull Request resolved: https://github.com/instagram/IGListKit/pull/1656 Reviewed By: jurmarcus Differential Revision: D93350284 Pulled By: TimOliver fbshipit-source-id: fa4276caae7309f3ef0fd78f5a0c4bcc05d9cb9f
1 line
No EOL
108 KiB
JSON
1 line
No EOL
108 KiB
JSON
{"Structs/IGListCollectionScrollingTraits.html#/c:@S@IGListCollectionScrollingTraits@FI@isTracking":{"name":"isTracking","abstract":"\u003cp\u003ereturns YES if user has touched. may not yet have started dragging.\u003c/p\u003e","parent_name":"IGListCollectionScrollingTraits"},"Structs/IGListCollectionScrollingTraits.html#/c:@S@IGListCollectionScrollingTraits@FI@isDragging":{"name":"isDragging","abstract":"\u003cp\u003ereturns YES if user has started scrolling. this may require some time and or distance to move to initiate dragging\u003c/p\u003e","parent_name":"IGListCollectionScrollingTraits"},"Structs/IGListCollectionScrollingTraits.html#/c:@S@IGListCollectionScrollingTraits@FI@isDecelerating":{"name":"isDecelerating","abstract":"\u003cp\u003ereturns YES if user isn\u0026rsquo;t dragging (touch up) but scroll view is still moving.\u003c/p\u003e","parent_name":"IGListCollectionScrollingTraits"},"Structs/IGListAdaptiveCoalescingExperimentConfig.html#/c:@S@IGListAdaptiveCoalescingExperimentConfig@FI@enabled":{"name":"enabled","abstract":"\u003cp\u003eEnable adaptive coalescing, where we try to mininimize the update delay\u003c/p\u003e","parent_name":"IGListAdaptiveCoalescingExperimentConfig"},"Structs/IGListAdaptiveCoalescingExperimentConfig.html#/c:@S@IGListAdaptiveCoalescingExperimentConfig@FI@minInterval":{"name":"minInterval","abstract":"\u003cp\u003eStart coalescing if the last update was within this interval\u003c/p\u003e","parent_name":"IGListAdaptiveCoalescingExperimentConfig"},"Structs/IGListAdaptiveCoalescingExperimentConfig.html#/c:@S@IGListAdaptiveCoalescingExperimentConfig@FI@intervalIncrement":{"name":"intervalIncrement","abstract":"\u003cp\u003eIf we need to coalesce, increase the interval by this much for next time.\u003c/p\u003e","parent_name":"IGListAdaptiveCoalescingExperimentConfig"},"Structs/IGListAdaptiveCoalescingExperimentConfig.html#/c:@S@IGListAdaptiveCoalescingExperimentConfig@FI@maxInterval":{"name":"maxInterval","abstract":"\u003cp\u003eThis is the maximum coalesce interval, so the slowest and update can wait.\u003c/p\u003e","parent_name":"IGListAdaptiveCoalescingExperimentConfig"},"Structs/IGListAdaptiveCoalescingExperimentConfig.html#/c:@S@IGListAdaptiveCoalescingExperimentConfig@FI@useMaxIntervalWhenViewNotVisible":{"name":"useMaxIntervalWhenViewNotVisible","abstract":"\u003cp\u003eCoalece using \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbStructs/IGListAdaptiveCoalescingExperimentConfig.html#/c:@S@IGListAdaptiveCoalescingExperimentConfig@FI@maxInterval\"\u003emaxInterval\u003c/a\u003e\u003c/code\u003e if view is not visible according to \u003ccode\u003eIGListViewVisibilityTracker\u003c/code\u003e\u003c/p\u003e","parent_name":"IGListAdaptiveCoalescingExperimentConfig"},"Structs/IGListAdaptiveDiffingExperimentConfig.html#/c:@S@IGListAdaptiveDiffingExperimentConfig@FI@enabled":{"name":"enabled","abstract":"\u003cp\u003eEnabled experimental code path. This needs to be enabled for the other properties to take effect.\u003c/p\u003e","parent_name":"IGListAdaptiveDiffingExperimentConfig"},"Structs/IGListAdaptiveDiffingExperimentConfig.html#/c:@S@IGListAdaptiveDiffingExperimentConfig@FI@higherQOSEnabled":{"name":"higherQOSEnabled","abstract":"\u003cp\u003eEnable higher background thread priority\u003c/p\u003e","parent_name":"IGListAdaptiveDiffingExperimentConfig"},"Structs/IGListAdaptiveDiffingExperimentConfig.html#/c:@S@IGListAdaptiveDiffingExperimentConfig@FI@maxItemCountToRunOnMain":{"name":"maxItemCountToRunOnMain","abstract":"\u003cp\u003eIf both item counts are under this number, we\u0026rsquo;ll run the diffing on the main thread.\u003c/p\u003e","parent_name":"IGListAdaptiveDiffingExperimentConfig"},"Structs/IGListAdaptiveDiffingExperimentConfig.html#/c:@S@IGListAdaptiveDiffingExperimentConfig@FI@lowerPriorityWhenViewNotVisible":{"name":"lowerPriorityWhenViewNotVisible","abstract":"\u003cp\u003eLower QOS if view is not visible according to \u003ccode\u003eIGListViewVisibilityTracker\u003c/code\u003e\u003c/p\u003e","parent_name":"IGListAdaptiveDiffingExperimentConfig"},"Structs/IGListAdaptiveDiffingExperimentConfig.html":{"name":"IGListAdaptiveDiffingExperimentConfig","abstract":"\u003cp\u003eCustomize how diffing is performed\u003c/p\u003e"},"Structs/IGListAdaptiveCoalescingExperimentConfig.html":{"name":"IGListAdaptiveCoalescingExperimentConfig","abstract":"\u003cp\u003eCustomize how coalescing works to speed up some updates\u003c/p\u003e"},"Structs/IGListCollectionScrollingTraits.html":{"name":"IGListCollectionScrollingTraits","abstract":"\u003cp\u003eThe current scrolling traits of the underlying collection view."},"Functions.html#/c:@F@IGListDiff":{"name":"IGListDiff","abstract":"\u003cp\u003eCreates a diff using indexes between two collections.\u003c/p\u003e"},"Functions.html#/c:@F@IGListDiffPaths":{"name":"IGListDiffPaths","abstract":"\u003cp\u003eCreates a diff using index paths between two collections.\u003c/p\u003e"},"Functions.html#/c:IGListExperiments.h@F@IGListExperimentEnabled":{"name":"IGListExperimentEnabled","abstract":"\u003cp\u003eCheck if an experiment is enabled in a bitmask.\u003c/p\u003e"},"Type%20Definitions/IGListCollectionScrollingTraits/IGListCollectionScrollingTraits.html#/c:@S@IGListCollectionScrollingTraits@FI@isTracking":{"name":"isTracking","abstract":"\u003cp\u003ereturns YES if user has touched. may not yet have started dragging.\u003c/p\u003e","parent_name":"IGListCollectionScrollingTraits"},"Type%20Definitions/IGListCollectionScrollingTraits/IGListCollectionScrollingTraits.html#/c:@S@IGListCollectionScrollingTraits@FI@isDragging":{"name":"isDragging","abstract":"\u003cp\u003ereturns YES if user has started scrolling. this may require some time and or distance to move to initiate dragging\u003c/p\u003e","parent_name":"IGListCollectionScrollingTraits"},"Type%20Definitions/IGListCollectionScrollingTraits/IGListCollectionScrollingTraits.html#/c:@S@IGListCollectionScrollingTraits@FI@isDecelerating":{"name":"isDecelerating","abstract":"\u003cp\u003ereturns YES if user isn\u0026rsquo;t dragging (touch up) but scroll view is still moving.\u003c/p\u003e","parent_name":"IGListCollectionScrollingTraits"},"Type%20Definitions/IGListCollectionScrollingTraits/IGListCollectionScrollingTraits.html":{"name":"IGListCollectionScrollingTraits","abstract":"\u003cp\u003eThe current scrolling traits of the underlying collection view.","parent_name":"IGListCollectionScrollingTraits"},"Type%20Definitions/IGListAdaptiveCoalescingExperimentConfig/IGListAdaptiveCoalescingExperimentConfig.html#/c:@S@IGListAdaptiveCoalescingExperimentConfig@FI@enabled":{"name":"enabled","abstract":"\u003cp\u003eEnable adaptive coalescing, where we try to mininimize the update delay\u003c/p\u003e","parent_name":"IGListAdaptiveCoalescingExperimentConfig"},"Type%20Definitions/IGListAdaptiveCoalescingExperimentConfig/IGListAdaptiveCoalescingExperimentConfig.html#/c:@S@IGListAdaptiveCoalescingExperimentConfig@FI@minInterval":{"name":"minInterval","abstract":"\u003cp\u003eStart coalescing if the last update was within this interval\u003c/p\u003e","parent_name":"IGListAdaptiveCoalescingExperimentConfig"},"Type%20Definitions/IGListAdaptiveCoalescingExperimentConfig/IGListAdaptiveCoalescingExperimentConfig.html#/c:@S@IGListAdaptiveCoalescingExperimentConfig@FI@intervalIncrement":{"name":"intervalIncrement","abstract":"\u003cp\u003eIf we need to coalesce, increase the interval by this much for next time.\u003c/p\u003e","parent_name":"IGListAdaptiveCoalescingExperimentConfig"},"Type%20Definitions/IGListAdaptiveCoalescingExperimentConfig/IGListAdaptiveCoalescingExperimentConfig.html#/c:@S@IGListAdaptiveCoalescingExperimentConfig@FI@maxInterval":{"name":"maxInterval","abstract":"\u003cp\u003eThis is the maximum coalesce interval, so the slowest and update can wait.\u003c/p\u003e","parent_name":"IGListAdaptiveCoalescingExperimentConfig"},"Type%20Definitions/IGListAdaptiveCoalescingExperimentConfig/IGListAdaptiveCoalescingExperimentConfig.html#/c:@S@IGListAdaptiveCoalescingExperimentConfig@FI@useMaxIntervalWhenViewNotVisible":{"name":"useMaxIntervalWhenViewNotVisible","abstract":"\u003cp\u003eCoalece using \u003ccode\u003emaxInterval\u003c/code\u003e if view is not visible according to \u003ccode\u003eIGListViewVisibilityTracker\u003c/code\u003e\u003c/p\u003e","parent_name":"IGListAdaptiveCoalescingExperimentConfig"},"Type%20Definitions/IGListAdaptiveCoalescingExperimentConfig/IGListAdaptiveCoalescingExperimentConfig.html":{"name":"IGListAdaptiveCoalescingExperimentConfig","abstract":"\u003cp\u003eCustomize how coalescing works to speed up some updates\u003c/p\u003e","parent_name":"IGListAdaptiveCoalescingExperimentConfig"},"Type%20Definitions/IGListAdaptiveDiffingExperimentConfig/IGListAdaptiveDiffingExperimentConfig.html#/c:@S@IGListAdaptiveDiffingExperimentConfig@FI@enabled":{"name":"enabled","abstract":"\u003cp\u003eEnabled experimental code path. This needs to be enabled for the other properties to take effect.\u003c/p\u003e","parent_name":"IGListAdaptiveDiffingExperimentConfig"},"Type%20Definitions/IGListAdaptiveDiffingExperimentConfig/IGListAdaptiveDiffingExperimentConfig.html#/c:@S@IGListAdaptiveDiffingExperimentConfig@FI@higherQOSEnabled":{"name":"higherQOSEnabled","abstract":"\u003cp\u003eEnable higher background thread priority\u003c/p\u003e","parent_name":"IGListAdaptiveDiffingExperimentConfig"},"Type%20Definitions/IGListAdaptiveDiffingExperimentConfig/IGListAdaptiveDiffingExperimentConfig.html#/c:@S@IGListAdaptiveDiffingExperimentConfig@FI@maxItemCountToRunOnMain":{"name":"maxItemCountToRunOnMain","abstract":"\u003cp\u003eIf both item counts are under this number, we\u0026rsquo;ll run the diffing on the main thread.\u003c/p\u003e","parent_name":"IGListAdaptiveDiffingExperimentConfig"},"Type%20Definitions/IGListAdaptiveDiffingExperimentConfig/IGListAdaptiveDiffingExperimentConfig.html#/c:@S@IGListAdaptiveDiffingExperimentConfig@FI@lowerPriorityWhenViewNotVisible":{"name":"lowerPriorityWhenViewNotVisible","abstract":"\u003cp\u003eLower QOS if view is not visible according to \u003ccode\u003eIGListViewVisibilityTracker\u003c/code\u003e\u003c/p\u003e","parent_name":"IGListAdaptiveDiffingExperimentConfig"},"Type%20Definitions/IGListAdaptiveDiffingExperimentConfig/IGListAdaptiveDiffingExperimentConfig.html":{"name":"IGListAdaptiveDiffingExperimentConfig","abstract":"\u003cp\u003eCustomize how diffing is performed\u003c/p\u003e","parent_name":"IGListAdaptiveDiffingExperimentConfig"},"Type%20Definitions/IGListAdaptiveDiffingExperimentConfig.html":{"name":"IGListAdaptiveDiffingExperimentConfig","abstract":"\u003cp\u003eCustomize how diffing is performed\u003c/p\u003e"},"Type%20Definitions/IGListAdaptiveCoalescingExperimentConfig.html":{"name":"IGListAdaptiveCoalescingExperimentConfig","abstract":"\u003cp\u003eCustomize how coalescing works to speed up some updates\u003c/p\u003e"},"Type%20Definitions.html#/c:IGListAdapter.h@T@IGListUpdaterCompletion":{"name":"IGListUpdaterCompletion","abstract":"\u003cp\u003eA block to execute when the list updates are completed.\u003c/p\u003e"},"Type%20Definitions/IGListCollectionScrollingTraits.html":{"name":"IGListCollectionScrollingTraits","abstract":"\u003cp\u003eThe current scrolling traits of the underlying collection view."},"Type%20Definitions.html#/c:IGListSingleSectionController.h@T@IGListSingleSectionCellConfigureBlock":{"name":"IGListSingleSectionCellConfigureBlock","abstract":"\u003cp\u003eA block used to configure cells.\u003c/p\u003e"},"Type%20Definitions.html#/c:IGListSingleSectionController.h@T@IGListSingleSectionCellSizeBlock":{"name":"IGListSingleSectionCellSizeBlock","abstract":"\u003cp\u003eA block that returns the size for the cell given the collection context.\u003c/p\u003e"},"Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListUpdatingCompletion":{"name":"IGListUpdatingCompletion","abstract":"\u003cp\u003eA completion block to execute when updates are finished.\u003c/p\u003e"},"Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListObjectTransitionBlock":{"name":"IGListObjectTransitionBlock","abstract":"\u003cp\u003eA block to be called when the adapter applies changes to the collection view.\u003c/p\u003e"},"Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListItemUpdateBlock":{"name":"IGListItemUpdateBlock","abstract":"\u003cp\u003eA block that contains all of the updates.\u003c/p\u003e"},"Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListReloadUpdateBlock":{"name":"IGListReloadUpdateBlock","abstract":"\u003cp\u003eA block to be called when an adapter reloads the collection view.\u003c/p\u003e"},"Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListToObjectBlock":{"name":"IGListToObjectBlock","abstract":"\u003cp\u003eA block that returns an array of objects to transition to.\u003c/p\u003e"},"Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListCollectionViewBlock":{"name":"IGListCollectionViewBlock","abstract":"\u003cp\u003eA block that returns a collection view to perform updates on.\u003c/p\u003e"},"Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListDataSourceChangeBlock":{"name":"IGListDataSourceChangeBlock","abstract":"\u003cp\u003eA block that applies a \u003ccode\u003eUICollectionView\u003c/code\u003e dataSource change\u003c/p\u003e"},"Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListTransitionDataBlock":{"name":"IGListTransitionDataBlock","abstract":"\u003cp\u003eA block that returns the \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListTransitionData.html\"\u003eIGListTransitionData\u003c/a\u003e\u003c/code\u003e needed before an update.\u003c/p\u003e"},"Type%20Definitions.html#/c:IGListUpdatingDelegate.h@T@IGListTransitionDataApplyBlock":{"name":"IGListTransitionDataApplyBlock","abstract":"\u003cp\u003eA block to be called when the adapter applies changes to the collection view.\u003c/p\u003e"},"Protocols/IGListWorkingRangeDelegate.html#/c:objc(pl)IGListWorkingRangeDelegate(im)listAdapter:sectionControllerWillEnterWorkingRange:":{"name":"-listAdapter:sectionControllerWillEnterWorkingRange:","abstract":"\u003cp\u003eNotifies the delegate that an section controller will enter the working range.\u003c/p\u003e","parent_name":"IGListWorkingRangeDelegate"},"Protocols/IGListWorkingRangeDelegate.html#/c:objc(pl)IGListWorkingRangeDelegate(im)listAdapter:sectionControllerDidExitWorkingRange:":{"name":"-listAdapter:sectionControllerDidExitWorkingRange:","abstract":"\u003cp\u003eNotifies the delegate that an section controller exited the working range.\u003c/p\u003e","parent_name":"IGListWorkingRangeDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)objectLookupPointerFunctions":{"name":"-objectLookupPointerFunctions","abstract":"\u003cp\u003eAsks the delegate for the pointer functions for looking up an object in a collection.\u003c/p\u003e","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)performUpdateWithCollectionViewBlock:animated:sectionDataBlock:applySectionDataBlock:completion:":{"name":"-performUpdateWithCollectionViewBlock:animated:sectionDataBlock:applySectionDataBlock:completion:","abstract":"\u003cp\u003ePerform a \u003cstrong\u003esection\u003c/strong\u003e update from an old array of objects to a new one.\u003c/p\u003e","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)performUpdateWithCollectionViewBlock:animated:itemUpdates:completion:":{"name":"-performUpdateWithCollectionViewBlock:animated:itemUpdates:completion:","abstract":"\u003cp\u003ePerform an \u003cstrong\u003eitem\u003c/strong\u003e update block in the collection view.\u003c/p\u003e","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)performDataSourceChange:":{"name":"-performDataSourceChange:","abstract":"\u003cp\u003ePerform a \u003ccode\u003e[UICollectionView setDataSource:...]\u003c/code\u003e swap within this block. It gives the updater the chance to cancel or","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)reloadDataWithCollectionViewBlock:reloadUpdateBlock:completion:":{"name":"-reloadDataWithCollectionViewBlock:reloadUpdateBlock:completion:","abstract":"\u003cp\u003eCompletely reload data in the collection.\u003c/p\u003e","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)insertItemsIntoCollectionView:indexPaths:":{"name":"-insertItemsIntoCollectionView:indexPaths:","abstract":"\u003cp\u003eTells the delegate to perform item inserts at the given index paths.\u003c/p\u003e","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)deleteItemsFromCollectionView:indexPaths:":{"name":"-deleteItemsFromCollectionView:indexPaths:","abstract":"\u003cp\u003eTells the delegate to perform item deletes at the given index paths.\u003c/p\u003e","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)moveItemInCollectionView:fromIndexPath:toIndexPath:":{"name":"-moveItemInCollectionView:fromIndexPath:toIndexPath:","abstract":"\u003cp\u003eTells the delegate to move an item from and to given index paths.\u003c/p\u003e","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)reloadItemInCollectionView:fromIndexPath:toIndexPath:":{"name":"-reloadItemInCollectionView:fromIndexPath:toIndexPath:","abstract":"\u003cp\u003eTells the delegate to reload an item from and to given index paths.\u003c/p\u003e","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)moveSectionInCollectionView:fromIndex:toIndex:":{"name":"-moveSectionInCollectionView:fromIndex:toIndex:","abstract":"\u003cp\u003eTells the delegate to move a section from and to given indexes.\u003c/p\u003e","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)reloadCollectionView:sections:":{"name":"-reloadCollectionView:sections:","abstract":"\u003cp\u003eCompletely reload each section in the collection view.\u003c/p\u003e","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)isInDataUpdateBlock":{"name":"-isInDataUpdateBlock","abstract":"\u003cp\u003eTrue if the updater is currently updating the source of truth, like executing applySectionDataBlock and","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListUpdatingDelegate.html#/c:objc(pl)IGListUpdatingDelegate(im)willCrashWithCollectionView:sectionControllerClass:":{"name":"-willCrashWithCollectionView:sectionControllerClass:","abstract":"\u003cp\u003eCalled when the updater detects an imminent crash, such as when a section controller returns a nil cell.","parent_name":"IGListUpdatingDelegate"},"Protocols/IGListTransitionDelegate.html#/c:objc(pl)IGListTransitionDelegate(im)listAdapter:customizedInitialLayoutAttributes:sectionController:atIndex:":{"name":"-listAdapter:customizedInitialLayoutAttributes:sectionController:atIndex:","abstract":"\u003cp\u003eAsks the delegate to customize and return the starting layout information for an item being inserted into the collection view.\u003c/p\u003e","parent_name":"IGListTransitionDelegate"},"Protocols/IGListTransitionDelegate.html#/c:objc(pl)IGListTransitionDelegate(im)listAdapter:customizedFinalLayoutAttributes:sectionController:atIndex:":{"name":"-listAdapter:customizedFinalLayoutAttributes:sectionController:atIndex:","abstract":"\u003cp\u003eAsks the delegate to customize and return the final layout information for an item that is about to be removed from the collection view.\u003c/p\u003e","parent_name":"IGListTransitionDelegate"},"Protocols/IGListSupplementaryViewSource.html#/c:objc(pl)IGListSupplementaryViewSource(im)supportedElementKinds":{"name":"-supportedElementKinds","abstract":"\u003cp\u003eAsks the SupplementaryViewSource for an array of supported element kinds.\u003c/p\u003e","parent_name":"IGListSupplementaryViewSource"},"Protocols/IGListSupplementaryViewSource.html#/c:objc(pl)IGListSupplementaryViewSource(im)viewForSupplementaryElementOfKind:atIndex:":{"name":"-viewForSupplementaryElementOfKind:atIndex:","abstract":"\u003cp\u003eAsks the SupplementaryViewSource for a configured supplementary view for the specified kind and index.\u003c/p\u003e","parent_name":"IGListSupplementaryViewSource"},"Protocols/IGListSupplementaryViewSource.html#/c:objc(pl)IGListSupplementaryViewSource(im)sizeForSupplementaryViewOfKind:atIndex:":{"name":"-sizeForSupplementaryViewOfKind:atIndex:","abstract":"\u003cp\u003eAsks the SupplementaryViewSource for the size of a supplementary view for the given kind and index path.\u003c/p\u003e","parent_name":"IGListSupplementaryViewSource"},"Protocols/IGListSingleSectionControllerDelegate.html#/c:objc(pl)IGListSingleSectionControllerDelegate(im)didSelectSectionController:withObject:":{"name":"-didSelectSectionController:withObject:","abstract":"\u003cp\u003eTells the delegate that the section controller was selected.\u003c/p\u003e","parent_name":"IGListSingleSectionControllerDelegate"},"Protocols/IGListSingleSectionControllerDelegate.html#/c:objc(pl)IGListSingleSectionControllerDelegate(im)didDeselectSectionController:withObject:":{"name":"-didDeselectSectionController:withObject:","abstract":"\u003cp\u003eTells the delegate that the section controller was deselected.\u003c/p\u003e","parent_name":"IGListSingleSectionControllerDelegate"},"Protocols/IGListScrollDelegate.html#/c:objc(pl)IGListScrollDelegate(im)listAdapter:didScrollSectionController:":{"name":"-listAdapter:didScrollSectionController:","abstract":"\u003cp\u003eTells the delegate that the section controller was scrolled on screen.\u003c/p\u003e","parent_name":"IGListScrollDelegate"},"Protocols/IGListScrollDelegate.html#/c:objc(pl)IGListScrollDelegate(im)listAdapter:willBeginDraggingSectionController:":{"name":"-listAdapter:willBeginDraggingSectionController:","abstract":"\u003cp\u003eTells the delegate that the section controller will be dragged on screen.\u003c/p\u003e","parent_name":"IGListScrollDelegate"},"Protocols/IGListScrollDelegate.html#/c:objc(pl)IGListScrollDelegate(im)listAdapter:didEndDraggingSectionController:willDecelerate:":{"name":"-listAdapter:didEndDraggingSectionController:willDecelerate:","abstract":"\u003cp\u003eTells the delegate that the section controller did end dragging on screen.\u003c/p\u003e","parent_name":"IGListScrollDelegate"},"Protocols/IGListScrollDelegate.html#/c:objc(pl)IGListScrollDelegate(im)listAdapter:didEndDeceleratingSectionController:":{"name":"-listAdapter:didEndDeceleratingSectionController:","abstract":"\u003cp\u003eTells the delegate that the section controller did end decelerating on screen.\u003c/p\u003e","parent_name":"IGListScrollDelegate"},"Protocols/IGListDisplayDelegate.html#/c:objc(pl)IGListDisplayDelegate(im)listAdapter:willDisplaySectionController:":{"name":"-listAdapter:willDisplaySectionController:","abstract":"\u003cp\u003eTells the delegate that the specified section controller is about to be displayed.\u003c/p\u003e","parent_name":"IGListDisplayDelegate"},"Protocols/IGListDisplayDelegate.html#/c:objc(pl)IGListDisplayDelegate(im)listAdapter:didEndDisplayingSectionController:":{"name":"-listAdapter:didEndDisplayingSectionController:","abstract":"\u003cp\u003eTells the delegate that the specified section controller is no longer being displayed.\u003c/p\u003e","parent_name":"IGListDisplayDelegate"},"Protocols/IGListDisplayDelegate.html#/c:objc(pl)IGListDisplayDelegate(im)listAdapter:willDisplaySectionController:cell:atIndex:":{"name":"-listAdapter:willDisplaySectionController:cell:atIndex:","abstract":"\u003cp\u003eTells the delegate that a cell in the specified list is about to be displayed.\u003c/p\u003e","parent_name":"IGListDisplayDelegate"},"Protocols/IGListDisplayDelegate.html#/c:objc(pl)IGListDisplayDelegate(im)listAdapter:didEndDisplayingSectionController:cell:atIndex:":{"name":"-listAdapter:didEndDisplayingSectionController:cell:atIndex:","abstract":"\u003cp\u003eTells the delegate that a cell in the specified list is no longer being displayed.\u003c/p\u003e","parent_name":"IGListDisplayDelegate"},"Protocols/IGListCollectionViewLayoutCompatible.html#/c:objc(pl)IGListCollectionViewLayoutCompatible(im)didModifySection:":{"name":"-didModifySection:","abstract":"\u003cp\u003eCalled to notify the layout that a specific section was modified before invalidation. This can be used to optimize","parent_name":"IGListCollectionViewLayoutCompatible"},"Protocols/IGListCollectionViewDelegateLayout.html#/c:objc(pl)IGListCollectionViewDelegateLayout(im)collectionView:layout:customizedInitialLayoutAttributes:atIndexPath:":{"name":"-collectionView:layout:customizedInitialLayoutAttributes:atIndexPath:","abstract":"\u003cp\u003eAsks the delegate to customize and return the starting layout information for an item being inserted into the collection view.\u003c/p\u003e","parent_name":"IGListCollectionViewDelegateLayout"},"Protocols/IGListCollectionViewDelegateLayout.html#/c:objc(pl)IGListCollectionViewDelegateLayout(im)collectionView:layout:customizedFinalLayoutAttributes:atIndexPath:":{"name":"-collectionView:layout:customizedFinalLayoutAttributes:atIndexPath:","abstract":"\u003cp\u003eAsks the delegate to customize and return the final layout information for an item that is about to be removed from the collection view.\u003c/p\u003e","parent_name":"IGListCollectionViewDelegateLayout"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(py)containerSize":{"name":"containerSize","abstract":"\u003cp\u003eThe size of the collection view. You can use this for sizing cells.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(py)containerInset":{"name":"containerInset","abstract":"\u003cp\u003eThe content insets of the collection view. You can use this for sizing cells.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(py)adjustedContainerInset":{"name":"adjustedContainerInset","abstract":"\u003cp\u003eThe adjusted content insets of the collection view. Equivalent to containerInset under iOS 11.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(py)insetContainerSize":{"name":"insetContainerSize","abstract":"\u003cp\u003eThe size of the collection view with content insets applied.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(py)containerContentOffset":{"name":"containerContentOffset","abstract":"\u003cp\u003eThe content offset of the collection view.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(py)traitCollection":{"name":"traitCollection","abstract":"\u003cp\u003eThe trait collection of the collection view.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(py)scrollingTraits":{"name":"scrollingTraits","abstract":"\u003cp\u003eThe current scrolling traits of the underlying collection view.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(py)experiments":{"name":"experiments","abstract":"\u003cp\u003eA bitmask of experiments to conduct on the section controller.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)containerSizeForSectionController:":{"name":"-containerSizeForSectionController:","abstract":"\u003cp\u003eReturns size of the collection view relative to the section controller.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)indexForCell:sectionController:":{"name":"-indexForCell:sectionController:","abstract":"\u003cp\u003eReturns the index of the specified cell in the collection relative to the section controller.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)cellForItemAtIndex:sectionController:":{"name":"-cellForItemAtIndex:sectionController:","abstract":"\u003cp\u003eReturns the cell in the collection at the specified index for the section controller.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)viewForSupplementaryElementOfKind:atIndex:sectionController:":{"name":"-viewForSupplementaryElementOfKind:atIndex:sectionController:","abstract":"\u003cp\u003eReturns the supplementary view in the collection at the specified index for the section controller.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)fullyVisibleCellsForSectionController:":{"name":"-fullyVisibleCellsForSectionController:","abstract":"\u003cp\u003eReturns the fully visible cells for the given section controller.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)visibleCellsForSectionController:":{"name":"-visibleCellsForSectionController:","abstract":"\u003cp\u003eReturns the visible cells for the given section controller.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)visibleIndexPathsForSectionController:":{"name":"-visibleIndexPathsForSectionController:","abstract":"\u003cp\u003eReturns the visible paths for the given section controller.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)deselectItemAtIndex:sectionController:animated:":{"name":"-deselectItemAtIndex:sectionController:animated:","abstract":"\u003cp\u003eDeselects a cell in the collection.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)selectItemAtIndex:sectionController:animated:scrollPosition:":{"name":"-selectItemAtIndex:sectionController:animated:scrollPosition:","abstract":"\u003cp\u003eSelects a cell in the collection.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)dequeueReusableCellOfClass:withReuseIdentifier:forSectionController:atIndex:":{"name":"-dequeueReusableCellOfClass:withReuseIdentifier:forSectionController:atIndex:","abstract":"\u003cp\u003eDequeues a cell from the collection view reuse pool.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)dequeueReusableCellOfClass:forSectionController:atIndex:":{"name":"-dequeueReusableCellOfClass:forSectionController:atIndex:","abstract":"\u003cp\u003eDequeues a cell from the collection view reuse pool.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)dequeueReusableCellWithNibName:bundle:forSectionController:atIndex:":{"name":"-dequeueReusableCellWithNibName:bundle:forSectionController:atIndex:","abstract":"\u003cp\u003eDequeues a cell from the collection view reuse pool.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)dequeueReusableCellFromStoryboardWithIdentifier:forSectionController:atIndex:":{"name":"-dequeueReusableCellFromStoryboardWithIdentifier:forSectionController:atIndex:","abstract":"\u003cp\u003eDequeues a storyboard prototype cell from the collection view reuse pool.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)dequeueReusableSupplementaryViewOfKind:forSectionController:class:atIndex:":{"name":"-dequeueReusableSupplementaryViewOfKind:forSectionController:class:atIndex:","abstract":"\u003cp\u003eDequeues a supplementary view from the collection view reuse pool.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)dequeueReusableSupplementaryViewFromStoryboardOfKind:withIdentifier:forSectionController:atIndex:":{"name":"-dequeueReusableSupplementaryViewFromStoryboardOfKind:withIdentifier:forSectionController:atIndex:","abstract":"\u003cp\u003eDequeues a supplementary view from the collection view reuse pool.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)dequeueReusableSupplementaryViewOfKind:forSectionController:nibName:bundle:atIndex:":{"name":"-dequeueReusableSupplementaryViewOfKind:forSectionController:nibName:bundle:atIndex:","abstract":"\u003cp\u003eDequeues a supplementary view from the collection view reuse pool.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)invalidateLayoutForSectionController:completion:":{"name":"-invalidateLayoutForSectionController:completion:","abstract":"\u003cp\u003eInvalidate the backing \u003ccode\u003eUICollectionViewLayout\u003c/code\u003e for all items in the section controller.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)layoutAttributesForItemAtIndex:sectionController:":{"name":"-layoutAttributesForItemAtIndex:sectionController:","abstract":"\u003cp\u003eReturns the layout attributes for the item at the specified index in the section controller.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)performBatchAnimated:updates:completion:":{"name":"-performBatchAnimated:updates:completion:","abstract":"\u003cp\u003eBatches and performs many cell-level updates in a single transaction.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)scrollToSectionController:atIndex:scrollPosition:animated:":{"name":"-scrollToSectionController:atIndex:scrollPosition:animated:","abstract":"\u003cp\u003eScrolls to the specified section controller in the list.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)indexPathForItemAtPoint:":{"name":"-indexPathForItemAtPoint:","abstract":"\u003cp\u003eReturns the index path of the item at the specified point in the collection view.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)convertPoint:fromView:":{"name":"-convertPoint:fromView:","abstract":"\u003cp\u003eConverts a point from the coordinate system of a given view to that of the collection view.\u003c/p\u003e","parent_name":"IGListCollectionContext"},"Protocols/IGListBindingSectionControllerSelectionDelegate.html#/c:objc(pl)IGListBindingSectionControllerSelectionDelegate(im)sectionController:didSelectItemAtIndex:viewModel:":{"name":"-sectionController:didSelectItemAtIndex:viewModel:","abstract":"\u003cp\u003eTells the delegate that a cell at a given index was selected.\u003c/p\u003e","parent_name":"IGListBindingSectionControllerSelectionDelegate"},"Protocols/IGListBindingSectionControllerSelectionDelegate.html#/c:objc(pl)IGListBindingSectionControllerSelectionDelegate(im)sectionController:didDeselectItemAtIndex:viewModel:":{"name":"-sectionController:didDeselectItemAtIndex:viewModel:","abstract":"\u003cp\u003eTells the delegate that a cell at a given index was deselected.\u003c/p\u003e","parent_name":"IGListBindingSectionControllerSelectionDelegate"},"Protocols/IGListBindingSectionControllerSelectionDelegate.html#/c:objc(pl)IGListBindingSectionControllerSelectionDelegate(im)sectionController:didHighlightItemAtIndex:viewModel:":{"name":"-sectionController:didHighlightItemAtIndex:viewModel:","abstract":"\u003cp\u003eTells the delegate that a cell at a given index was highlighted.\u003c/p\u003e","parent_name":"IGListBindingSectionControllerSelectionDelegate"},"Protocols/IGListBindingSectionControllerSelectionDelegate.html#/c:objc(pl)IGListBindingSectionControllerSelectionDelegate(im)sectionController:didUnhighlightItemAtIndex:viewModel:":{"name":"-sectionController:didUnhighlightItemAtIndex:viewModel:","abstract":"\u003cp\u003eTells the delegate that a cell at a given index was unhighlighted.\u003c/p\u003e","parent_name":"IGListBindingSectionControllerSelectionDelegate"},"Protocols/IGListBindingSectionControllerSelectionDelegate.html#/c:objc(pl)IGListBindingSectionControllerSelectionDelegate(im)sectionController:contextMenuConfigurationForItemAtIndex:point:viewModel:":{"name":"-sectionController:contextMenuConfigurationForItemAtIndex:point:viewModel:","abstract":"\u003cp\u003eTells the delegate that a cell has requested a menu configuration.\u003c/p\u003e","parent_name":"IGListBindingSectionControllerSelectionDelegate"},"Protocols/IGListBindingSectionControllerDataSource.html#/c:objc(pl)IGListBindingSectionControllerDataSource(im)sectionController:viewModelsForObject:":{"name":"-sectionController:viewModelsForObject:","abstract":"\u003cp\u003eCreate an array of view models given a top-level object.\u003c/p\u003e","parent_name":"IGListBindingSectionControllerDataSource"},"Protocols/IGListBindingSectionControllerDataSource.html#/c:objc(pl)IGListBindingSectionControllerDataSource(im)sectionController:cellForViewModel:atIndex:":{"name":"-sectionController:cellForViewModel:atIndex:","abstract":"\u003cp\u003eReturn a dequeued cell for a given view model.\u003c/p\u003e","parent_name":"IGListBindingSectionControllerDataSource"},"Protocols/IGListBindingSectionControllerDataSource.html#/c:objc(pl)IGListBindingSectionControllerDataSource(im)sectionController:sizeForViewModel:atIndex:":{"name":"-sectionController:sizeForViewModel:atIndex:","abstract":"\u003cp\u003eReturn a cell size for a given view model.\u003c/p\u003e","parent_name":"IGListBindingSectionControllerDataSource"},"Protocols/IGListBindable.html#/c:objc(pl)IGListBindable(im)bindViewModel:":{"name":"-bindViewModel:","abstract":"\u003cp\u003eTells the cell to configure itself with the given view model.\u003c/p\u003e","parent_name":"IGListBindable"},"Protocols/IGListBatchContext.html#/c:objc(pl)IGListBatchContext(im)reloadInSectionController:atIndexes:":{"name":"-reloadInSectionController:atIndexes:","abstract":"\u003cp\u003eReloads cells in the section controller.\u003c/p\u003e","parent_name":"IGListBatchContext"},"Protocols/IGListBatchContext.html#/c:objc(pl)IGListBatchContext(im)insertInSectionController:atIndexes:":{"name":"-insertInSectionController:atIndexes:","abstract":"\u003cp\u003eInserts cells in the list.\u003c/p\u003e","parent_name":"IGListBatchContext"},"Protocols/IGListBatchContext.html#/c:objc(pl)IGListBatchContext(im)deleteInSectionController:atIndexes:":{"name":"-deleteInSectionController:atIndexes:","abstract":"\u003cp\u003eDeletes cells in the list.\u003c/p\u003e","parent_name":"IGListBatchContext"},"Protocols/IGListBatchContext.html#/c:objc(pl)IGListBatchContext(im)invalidateLayoutInSectionController:atIndexes:":{"name":"-invalidateLayoutInSectionController:atIndexes:","abstract":"\u003cp\u003eInvalidates layouts of cells at specific in the section controller.\u003c/p\u003e","parent_name":"IGListBatchContext"},"Protocols/IGListBatchContext.html#/c:objc(pl)IGListBatchContext(im)moveInSectionController:fromIndex:toIndex:":{"name":"-moveInSectionController:fromIndex:toIndex:","abstract":"\u003cp\u003eMoves a cell from one index to another within the section controller.\u003c/p\u003e","parent_name":"IGListBatchContext"},"Protocols/IGListBatchContext.html#/c:objc(pl)IGListBatchContext(im)reloadSectionController:":{"name":"-reloadSectionController:","abstract":"\u003cp\u003eReloads the entire section controller.\u003c/p\u003e","parent_name":"IGListBatchContext"},"Protocols/IGListBatchContext.html#/c:objc(pl)IGListBatchContext(im)moveSectionControllerInteractive:fromIndex:toIndex:":{"name":"-moveSectionControllerInteractive:fromIndex:toIndex:","abstract":"\u003cp\u003eMoves a section controller from one index to another during interactive reordering.\u003c/p\u003e","parent_name":"IGListBatchContext"},"Protocols/IGListBatchContext.html#/c:objc(pl)IGListBatchContext(im)moveInSectionControllerInteractive:fromIndex:toIndex:":{"name":"-moveInSectionControllerInteractive:fromIndex:toIndex:","abstract":"\u003cp\u003eMoves an object within a section controller from one index to another during interactive reordering.\u003c/p\u003e","parent_name":"IGListBatchContext"},"Protocols/IGListBatchContext.html#/c:objc(pl)IGListBatchContext(im)revertInvalidInteractiveMoveFromIndexPath:toIndexPath:":{"name":"-revertInvalidInteractiveMoveFromIndexPath:toIndexPath:","abstract":"\u003cp\u003eReverts an move from one indexPath to another during interactive reordering.\u003c/p\u003e","parent_name":"IGListBatchContext"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willDiffFromObjects:toObjects:":{"name":"-listAdapterUpdater:willDiffFromObjects:toObjects:","abstract":"\u003cp\u003eNotifies the delegate that the updater is about to beging diffing.\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:didDiffWithResults:onBackgroundThread:":{"name":"-listAdapterUpdater:didDiffWithResults:onBackgroundThread:","abstract":"\u003cp\u003eNotifies the delegate that the updater finished diffing.\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willPerformBatchUpdatesWithCollectionView:fromObjects:toObjects:listIndexSetResult:animated:":{"name":"-listAdapterUpdater:willPerformBatchUpdatesWithCollectionView:fromObjects:toObjects:listIndexSetResult:animated:","abstract":"\u003cp\u003eNotifies the delegate that the updater will call \u003ccode\u003e-[UICollectionView performBatchUpdates:completion:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:didPerformBatchUpdates:collectionView:":{"name":"-listAdapterUpdater:didPerformBatchUpdates:collectionView:","abstract":"\u003cp\u003eNotifies the delegate that the updater successfully finished \u003ccode\u003e-[UICollectionView performBatchUpdates:completion:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willInsertIndexPaths:collectionView:":{"name":"-listAdapterUpdater:willInsertIndexPaths:collectionView:","abstract":"\u003cp\u003eNotifies the delegate that the updater will call \u003ccode\u003e-[UICollectionView insertItemsAtIndexPaths:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willDeleteIndexPaths:collectionView:":{"name":"-listAdapterUpdater:willDeleteIndexPaths:collectionView:","abstract":"\u003cp\u003eNotifies the delegate that the updater will call \u003ccode\u003e-[UICollectionView deleteItemsAtIndexPaths:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willMoveFromIndexPath:toIndexPath:collectionView:":{"name":"-listAdapterUpdater:willMoveFromIndexPath:toIndexPath:collectionView:","abstract":"\u003cp\u003eNotifies the delegate that the updater will call \u003ccode\u003e-[UICollectionView moveItemAtIndexPath:toIndexPath:]\u003c/code\u003e\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willReloadIndexPaths:collectionView:":{"name":"-listAdapterUpdater:willReloadIndexPaths:collectionView:","abstract":"\u003cp\u003eNotifies the delegate that the updater will call \u003ccode\u003e-[UICollectionView reloadItemsAtIndexPaths:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willReloadSections:collectionView:":{"name":"-listAdapterUpdater:willReloadSections:collectionView:","abstract":"\u003cp\u003eNotifies the delegate that the updater will call \u003ccode\u003e-[UICollectionView reloadSections:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willReloadDataWithCollectionView:isFallbackReload:":{"name":"-listAdapterUpdater:willReloadDataWithCollectionView:isFallbackReload:","abstract":"\u003cp\u003eNotifies the delegate that the updater will call \u003ccode\u003e-[UICollectionView reloadData]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:didReloadDataWithCollectionView:isFallbackReload:":{"name":"-listAdapterUpdater:didReloadDataWithCollectionView:isFallbackReload:","abstract":"\u003cp\u003eNotifies the delegate that the updater successfully called \u003ccode\u003e-[UICollectionView reloadData]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:collectionView:willCrashWithException:fromObjects:toObjects:diffResult:updates:":{"name":"-listAdapterUpdater:collectionView:willCrashWithException:fromObjects:toObjects:diffResult:updates:","abstract":"\u003cp\u003eNotifies the delegate that the collection view threw an exception in \u003ccode\u003e-[UICollectionView performBatchUpdates:completion:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:willCrashWithCollectionView:sectionControllerClass:":{"name":"-listAdapterUpdater:willCrashWithCollectionView:sectionControllerClass:","abstract":"\u003cp\u003eNotifies the delegate that the updater detected an imminent crash, such as when a section controller returns a nil cell.","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdaterDelegate.html#/c:objc(pl)IGListAdapterUpdaterDelegate(im)listAdapterUpdater:didFinishWithoutUpdatesWithCollectionView:":{"name":"-listAdapterUpdater:didFinishWithoutUpdatesWithCollectionView:","abstract":"\u003cp\u003eNotifies the delegate that the updater finished without performing any batch updates or reloads\u003c/p\u003e","parent_name":"IGListAdapterUpdaterDelegate"},"Protocols/IGListAdapterUpdateListener.html#/c:objc(pl)IGListAdapterUpdateListener(im)listAdapter:didFinishUpdate:animated:":{"name":"-listAdapter:didFinishUpdate:animated:","abstract":"\u003cp\u003eNotifies a listener that the listAdapter was updated.\u003c/p\u003e","parent_name":"IGListAdapterUpdateListener"},"Protocols/IGListAdapterPerformanceDelegate.html#/c:objc(pl)IGListAdapterPerformanceDelegate(im)listAdapterWillCallDequeueCell:":{"name":"-listAdapterWillCallDequeueCell:","abstract":"\u003cp\u003eWill call \u003ccode\u003e-[IGListAdapter collectionView:cellForItemAtIndexPath:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterPerformanceDelegate"},"Protocols/IGListAdapterPerformanceDelegate.html#/c:objc(pl)IGListAdapterPerformanceDelegate(im)listAdapter:didCallDequeueCell:onSectionController:atIndex:":{"name":"-listAdapter:didCallDequeueCell:onSectionController:atIndex:","abstract":"\u003cp\u003eDid finish calling \u003ccode\u003e-[IGListAdapter collectionView:cellForItemAtIndexPath:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterPerformanceDelegate"},"Protocols/IGListAdapterPerformanceDelegate.html#/c:objc(pl)IGListAdapterPerformanceDelegate(im)listAdapterWillCallDisplayCell:":{"name":"-listAdapterWillCallDisplayCell:","abstract":"\u003cp\u003eWill call \u003ccode\u003e-[IGListAdapter collectionView:willDisplayCell:forItemAtIndexPath:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterPerformanceDelegate"},"Protocols/IGListAdapterPerformanceDelegate.html#/c:objc(pl)IGListAdapterPerformanceDelegate(im)listAdapter:didCallDisplayCell:onSectionController:atIndex:":{"name":"-listAdapter:didCallDisplayCell:onSectionController:atIndex:","abstract":"\u003cp\u003eDid finish calling \u003ccode\u003e-[IGListAdapter collectionView:willDisplayCell:forItemAtIndexPath:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterPerformanceDelegate"},"Protocols/IGListAdapterPerformanceDelegate.html#/c:objc(pl)IGListAdapterPerformanceDelegate(im)listAdapterWillCallEndDisplayCell:":{"name":"-listAdapterWillCallEndDisplayCell:","abstract":"\u003cp\u003eWill call \u003ccode\u003e-[IGListAdapter collectionView:didEndDisplayingCell:forItemAtIndexPath:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterPerformanceDelegate"},"Protocols/IGListAdapterPerformanceDelegate.html#/c:objc(pl)IGListAdapterPerformanceDelegate(im)listAdapter:didCallEndDisplayCell:onSectionController:atIndex:":{"name":"-listAdapter:didCallEndDisplayCell:onSectionController:atIndex:","abstract":"\u003cp\u003eDid finish calling \u003ccode\u003e-[IGListAdapter collectionView:didEndDisplayingCell:forItemAtIndexPath:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterPerformanceDelegate"},"Protocols/IGListAdapterPerformanceDelegate.html#/c:objc(pl)IGListAdapterPerformanceDelegate(im)listAdapterWillCallSize:":{"name":"-listAdapterWillCallSize:","abstract":"\u003cp\u003eWill call \u003ccode\u003e-[IGListAdapter collectionView:collectionViewLayout:sizeForItemAtIndexPath:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterPerformanceDelegate"},"Protocols/IGListAdapterPerformanceDelegate.html#/c:objc(pl)IGListAdapterPerformanceDelegate(im)listAdapter:didCallSizeOnSectionController:atIndex:":{"name":"-listAdapter:didCallSizeOnSectionController:atIndex:","abstract":"\u003cp\u003eDid finish calling \u003ccode\u003e-[IGListAdapter collectionView:collectionViewLayout:sizeForItemAtIndexPath:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterPerformanceDelegate"},"Protocols/IGListAdapterPerformanceDelegate.html#/c:objc(pl)IGListAdapterPerformanceDelegate(im)listAdapterWillCallScroll:":{"name":"-listAdapterWillCallScroll:","abstract":"\u003cp\u003eWill call \u003ccode\u003e-[IGListAdapter scrollViewDidScroll:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterPerformanceDelegate"},"Protocols/IGListAdapterPerformanceDelegate.html#/c:objc(pl)IGListAdapterPerformanceDelegate(im)listAdapter:didCallScroll:":{"name":"-listAdapter:didCallScroll:","abstract":"\u003cp\u003eDid finish calling \u003ccode\u003e-[IGListAdapter scrollViewDidScroll:]\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterPerformanceDelegate"},"Protocols/IGListAdapterMoveDelegate.html#/c:objc(pl)IGListAdapterMoveDelegate(im)listAdapter:moveObject:from:to:":{"name":"-listAdapter:moveObject:from:to:","abstract":"\u003cp\u003eAsks the delegate to move a section object as the result of interactive reordering.\u003c/p\u003e","parent_name":"IGListAdapterMoveDelegate"},"Protocols/IGListAdapterDelegate.html#/c:objc(pl)IGListAdapterDelegate(im)listAdapter:willDisplayObject:atIndex:":{"name":"-listAdapter:willDisplayObject:atIndex:","abstract":"\u003cp\u003eNotifies the delegate that a list object is about to be displayed.\u003c/p\u003e","parent_name":"IGListAdapterDelegate"},"Protocols/IGListAdapterDelegate.html#/c:objc(pl)IGListAdapterDelegate(im)listAdapter:didEndDisplayingObject:atIndex:":{"name":"-listAdapter:didEndDisplayingObject:atIndex:","abstract":"\u003cp\u003eNotifies the delegate that a list object is no longer being displayed.\u003c/p\u003e","parent_name":"IGListAdapterDelegate"},"Protocols/IGListAdapterDelegate.html#/c:objc(pl)IGListAdapterDelegate(im)listAdapter:willDisplayObject:cell:atIndexPath:":{"name":"-listAdapter:willDisplayObject:cell:atIndexPath:","abstract":"\u003cp\u003eNotifies the delegate that a list object is about to be displayed. This method is distinct from willDisplayObject:atIndex","parent_name":"IGListAdapterDelegate"},"Protocols/IGListAdapterDelegate.html#/c:objc(pl)IGListAdapterDelegate(im)listAdapter:didEndDisplayingObject:cell:atIndexPath:":{"name":"-listAdapter:didEndDisplayingObject:cell:atIndexPath:","abstract":"\u003cp\u003eNotifies the delegate that a list object is no longer being displayed. This method is distinct from didEndDisplayingObject:atIndex","parent_name":"IGListAdapterDelegate"},"Protocols/IGListAdapterDataSource.html#/c:objc(pl)IGListAdapterDataSource(im)objectsForListAdapter:":{"name":"-objectsForListAdapter:","abstract":"\u003cp\u003eAsks the data source for the objects to display in the list.\u003c/p\u003e","parent_name":"IGListAdapterDataSource"},"Protocols/IGListAdapterDataSource.html#/c:objc(pl)IGListAdapterDataSource(im)listAdapter:sectionControllerForObject:":{"name":"-listAdapter:sectionControllerForObject:","abstract":"\u003cp\u003eAsks the data source for a section controller for the specified object in the list.\u003c/p\u003e","parent_name":"IGListAdapterDataSource"},"Protocols/IGListAdapterDataSource.html#/c:objc(pl)IGListAdapterDataSource(im)emptyViewForListAdapter:":{"name":"-emptyViewForListAdapter:","abstract":"\u003cp\u003eAsks the data source for a view to use as the collection view background when the list is empty.\u003c/p\u003e","parent_name":"IGListAdapterDataSource"},"Protocols/IGListDiffable.html#/c:objc(pl)IGListDiffable(im)diffIdentifier":{"name":"-diffIdentifier","abstract":"\u003cp\u003eReturns a key that uniquely identifies the object.\u003c/p\u003e","parent_name":"IGListDiffable"},"Protocols/IGListDiffable.html#/c:objc(pl)IGListDiffable(im)isEqualToDiffableObject:":{"name":"-isEqualToDiffableObject:","abstract":"\u003cp\u003eReturns whether the receiver and a given object are equal.\u003c/p\u003e","parent_name":"IGListDiffable"},"Protocols/IGListDiffable.html":{"name":"IGListDiffable","abstract":"\u003cp\u003eThe \u003ccode\u003eIGListDiffable\u003c/code\u003e protocol provides methods needed to compare the identity and equality of two objects.\u003c/p\u003e"},"Protocols/IGListAdapterDataSource.html":{"name":"IGListAdapterDataSource","abstract":"\u003cp\u003eImplement this protocol to provide data to an \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListAdapter.html\"\u003eIGListAdapter\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e"},"Protocols/IGListAdapterDelegate.html":{"name":"IGListAdapterDelegate","abstract":"\u003cp\u003eConform to \u003ccode\u003eIGListAdapterDelegate\u003c/code\u003e to receive display events for objects in a list.\u003c/p\u003e"},"Protocols/IGListAdapterMoveDelegate.html":{"name":"IGListAdapterMoveDelegate","abstract":"\u003cp\u003eConform to \u003ccode\u003eIGListAdapterMoveDelegate\u003c/code\u003e to receive interactive reordering requests.\u003c/p\u003e"},"Protocols/IGListAdapterPerformanceDelegate.html":{"name":"IGListAdapterPerformanceDelegate","abstract":"\u003cp\u003e\u003ccode\u003eIGListAdapterPerformanceDelegate\u003c/code\u003e can be used to measure cell dequeue, display, size, and scroll callbacks.\u003c/p\u003e"},"Protocols/IGListAdapterUpdateListener.html":{"name":"IGListAdapterUpdateListener","abstract":"\u003cp\u003eConform to this protocol to receive events about \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListAdapter.html\"\u003eIGListAdapter\u003c/a\u003e\u003c/code\u003e updates.\u003c/p\u003e"},"Protocols/IGListAdapterUpdaterDelegate.html":{"name":"IGListAdapterUpdaterDelegate","abstract":"\u003cp\u003eA protocol that receives events about \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListAdapterUpdater.html\"\u003eIGListAdapterUpdater\u003c/a\u003e\u003c/code\u003e operations.\u003c/p\u003e"},"Protocols/IGListBatchContext.html":{"name":"IGListBatchContext","abstract":"\u003cp\u003eObjects conforming to the IGListBatchContext protocol provide a way for section controllers to mutate their cells or"},"Protocols/IGListBindable.html":{"name":"IGListBindable","abstract":"\u003cp\u003eA protocol for cells that configure themselves given a view model.\u003c/p\u003e"},"Protocols/IGListBindingSectionControllerDataSource.html":{"name":"IGListBindingSectionControllerDataSource","abstract":"\u003cp\u003eA protocol that returns data to power cells in an \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListBindingSectionController.html\"\u003eIGListBindingSectionController\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e"},"Protocols/IGListBindingSectionControllerSelectionDelegate.html":{"name":"IGListBindingSectionControllerSelectionDelegate","abstract":"\u003cp\u003eA protocol that handles cell selection events in an \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListBindingSectionController.html\"\u003eIGListBindingSectionController\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e"},"Protocols/IGListCollectionContext.html":{"name":"IGListCollectionContext","abstract":"\u003cp\u003eThe collection context provides limited access to the collection-related information that"},"Protocols/IGListCollectionViewDelegateLayout.html":{"name":"IGListCollectionViewDelegateLayout","abstract":"\u003cp\u003eConform to \u003ccode\u003eIGListCollectionViewDelegateLayout\u003c/code\u003e to provide customized layout information for a collection view.\u003c/p\u003e"},"Protocols/IGListCollectionViewLayoutCompatible.html":{"name":"IGListCollectionViewLayoutCompatible","abstract":"\u003cp\u003eA protocol for layouts that defines interaction with an IGListCollectionView, for recieving updated section indexes.\u003c/p\u003e"},"Protocols/IGListDisplayDelegate.html":{"name":"IGListDisplayDelegate","abstract":"\u003cp\u003eImplement this protocol to receive display events for a section controller when it is on screen.\u003c/p\u003e"},"Protocols/IGListScrollDelegate.html":{"name":"IGListScrollDelegate","abstract":"\u003cp\u003eImplement this protocol to receive display events for a section controller when it is on screen.\u003c/p\u003e"},"Protocols/IGListSingleSectionControllerDelegate.html":{"name":"IGListSingleSectionControllerDelegate","abstract":"\u003cp\u003eA delegate that can receive selection events on an \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListSingleSectionController.html\"\u003eIGListSingleSectionController\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e"},"Protocols/IGListSupplementaryViewSource.html":{"name":"IGListSupplementaryViewSource","abstract":"\u003cp\u003eConform to this protocol to provide information about a list\u0026rsquo;s supplementary views. This data is used in"},"Protocols/IGListTransitionDelegate.html":{"name":"IGListTransitionDelegate","abstract":"\u003cp\u003eConform to \u003ccode\u003eIGListTransitionDelegate\u003c/code\u003e to provide customized layout information for a collection view.\u003c/p\u003e"},"Protocols/IGListUpdatingDelegate.html":{"name":"IGListUpdatingDelegate","abstract":"\u003cp\u003eImplement this protocol in order to handle both section and row based update events. Implementation should forward or"},"Protocols/IGListWorkingRangeDelegate.html":{"name":"IGListWorkingRangeDelegate","abstract":"\u003cp\u003eImplement this protocol to receive working range events for a list.\u003c/p\u003e"},"Enums/IGListAdapterUpdateType.html#/c:@E@IGListAdapterUpdateType@IGListAdapterUpdateTypePerformUpdates":{"name":"IGListAdapterUpdateTypePerformUpdates","abstract":"\u003cp\u003e\u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)performUpdatesAnimated:completion:\"\u003e-[IGListAdapter performUpdatesAnimated:completion:]\u003c/a\u003e\u003c/code\u003e was executed.\u003c/p\u003e","parent_name":"IGListAdapterUpdateType"},"Enums/IGListAdapterUpdateType.html#/c:@E@IGListAdapterUpdateType@IGListAdapterUpdateTypeReloadData":{"name":"IGListAdapterUpdateTypeReloadData","abstract":"\u003cp\u003e\u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)reloadDataWithCompletion:\"\u003e-[IGListAdapter reloadDataWithCompletion:]\u003c/a\u003e\u003c/code\u003e was executed.\u003c/p\u003e","parent_name":"IGListAdapterUpdateType"},"Enums/IGListAdapterUpdateType.html#/c:@E@IGListAdapterUpdateType@IGListAdapterUpdateTypeItemUpdates":{"name":"IGListAdapterUpdateTypeItemUpdates","abstract":"\u003cp\u003e\u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbProtocols/IGListCollectionContext.html#/c:objc(pl)IGListCollectionContext(im)performBatchAnimated:updates:completion:\"\u003e-[IGListCollectionContext performBatchAnimated:updates:completion:]\u003c/a\u003e\u003c/code\u003e was executed by an \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListSectionController.html\"\u003eIGListSectionController\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapterUpdateType"},"Enums/IGListExperiment.html#/c:@E@IGListExperiment@IGListExperimentNone":{"name":"IGListExperimentNone","abstract":"\u003cp\u003eSpecifies no experiments.\u003c/p\u003e","parent_name":"IGListExperiment"},"Enums/IGListExperiment.html#/c:@E@IGListExperiment@IGListExperimentInvalidateLayoutForUpdates":{"name":"IGListExperimentInvalidateLayoutForUpdates","abstract":"\u003cp\u003eTest invalidating layout when cell reloads/updates in IGListBindingSectionController.\u003c/p\u003e","parent_name":"IGListExperiment"},"Enums/IGListExperiment.html#/c:@E@IGListExperiment@IGListExperimentThrowOnInconsistencyException":{"name":"IGListExperimentThrowOnInconsistencyException","abstract":"\u003cp\u003eThrow NSInternalInconsistencyException during an update\u003c/p\u003e","parent_name":"IGListExperiment"},"Enums/IGListExperiment.html#/c:@E@IGListExperiment@IGListExperimentRemoveDataSourceChangeEarlyExit":{"name":"IGListExperimentRemoveDataSourceChangeEarlyExit","abstract":"\u003cp\u003eRemove the early exit so multiple updates can\u0026rsquo;t happen at once\u003c/p\u003e","parent_name":"IGListExperiment"},"Enums/IGListExperiment.html#/c:@E@IGListExperiment@IGListExperimentFixPreferredFocusedView":{"name":"IGListExperimentFixPreferredFocusedView","abstract":"\u003cp\u003eAvoids creating off-screen cells\u003c/p\u003e","parent_name":"IGListExperiment"},"Enums/IGListDiffOption.html#/c:@E@IGListDiffOption@IGListDiffPointerPersonality":{"name":"IGListDiffPointerPersonality","abstract":"\u003cp\u003eCompare objects using pointer personality.\u003c/p\u003e","parent_name":"IGListDiffOption"},"Enums/IGListDiffOption.html#/c:@E@IGListDiffOption@IGListDiffEquality":{"name":"IGListDiffEquality","abstract":"\u003cp\u003eCompare objects using \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbProtocols/IGListDiffable.html#/c:objc(pl)IGListDiffable(im)isEqualToDiffableObject:\"\u003e-[IGListDiffable isEqualToDiffableObject:]\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListDiffOption"},"Enums/IGListDiffOption.html":{"name":"IGListDiffOption","abstract":"\u003cp\u003eAn option for how to do comparisons between similar objects.\u003c/p\u003e"},"Enums/IGListExperiment.html":{"name":"IGListExperiment","abstract":"\u003cp\u003eBitmask-able options used for pre-release feature testing.\u003c/p\u003e"},"Enums/IGListAdapterUpdateType.html":{"name":"IGListAdapterUpdateType","abstract":"\u003cp\u003eThe type of update that was performed by an \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListAdapter.html\"\u003eIGListAdapter\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e"},"Constants.html#/c:@IGListKitVersionNumber":{"name":"IGListKitVersionNumber","abstract":"\u003cp\u003eProject version number for IGListKit.\u003c/p\u003e"},"Constants.html#/c:@IGListKitVersionString":{"name":"IGListKitVersionString","abstract":"\u003cp\u003eProject version string for IGListKit.\u003c/p\u003e"},"Classes/IGListTransitionData.html#/c:objc(cs)IGListTransitionData(im)initFromObjects:toObjects:toSectionControllers:":{"name":"-initFromObjects:toObjects:toSectionControllers:","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e","parent_name":"IGListTransitionData"},"Classes/IGListTransitionData.html#/c:objc(cs)IGListTransitionData(im)init":{"name":"-init","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e","parent_name":"IGListTransitionData"},"Classes/IGListTransitionData.html#/c:objc(cs)IGListTransitionData(cm)new":{"name":"+new","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e","parent_name":"IGListTransitionData"},"Classes/IGListTransitionData.html#/c:objc(cs)IGListTransitionData(py)fromObjects":{"name":"fromObjects","abstract":"\u003cp\u003eThe previous objects in the collection view. Objects must conform to \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbProtocols/IGListDiffable.html\"\u003eIGListDiffable\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListTransitionData"},"Classes/IGListTransitionData.html#/c:objc(cs)IGListTransitionData(py)toObjects":{"name":"toObjects","abstract":"\u003cp\u003eThe new objects in the collection view. Objects must conform to \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbProtocols/IGListDiffable.html\"\u003eIGListDiffable\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListTransitionData"},"Classes/IGListTransitionData.html#/c:objc(cs)IGListTransitionData(py)toSectionControllers":{"name":"toSectionControllers","abstract":"\u003cp\u003eThe section controllers corresponding to the \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListTransitionData.html#/c:objc(cs)IGListTransitionData(py)toObjects\"\u003etoObjects\u003c/a\u003e\u003c/code\u003e\u003c/p\u003e","parent_name":"IGListTransitionData"},"Classes/IGListSingleSectionController.html#/c:objc(cs)IGListSingleSectionController(im)initWithCellClass:configureBlock:sizeBlock:":{"name":"-initWithCellClass:configureBlock:sizeBlock:","abstract":"\u003cp\u003eCreates a new section controller for a given cell type that will always have only one cell when present in a list.\u003c/p\u003e","parent_name":"IGListSingleSectionController"},"Classes/IGListSingleSectionController.html#/c:objc(cs)IGListSingleSectionController(im)initWithNibName:bundle:configureBlock:sizeBlock:":{"name":"-initWithNibName:bundle:configureBlock:sizeBlock:","abstract":"\u003cp\u003eCreates a new section controller for a given nib name and bundle that will always have only one cell when present in a list.\u003c/p\u003e","parent_name":"IGListSingleSectionController"},"Classes/IGListSingleSectionController.html#/c:objc(cs)IGListSingleSectionController(im)initWithStoryboardCellIdentifier:configureBlock:sizeBlock:":{"name":"-initWithStoryboardCellIdentifier:configureBlock:sizeBlock:","abstract":"\u003cp\u003eCreates a new section controller for a given storyboard cell identifier that will always have only one cell when present in a list.\u003c/p\u003e","parent_name":"IGListSingleSectionController"},"Classes/IGListSingleSectionController.html#/c:objc(cs)IGListSingleSectionController(py)selectionDelegate":{"name":"selectionDelegate","abstract":"\u003cp\u003eAn optional delegate that handles selection and deselection.\u003c/p\u003e","parent_name":"IGListSingleSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)numberOfItems":{"name":"-numberOfItems","abstract":"\u003cp\u003eReturns the number of items in the section.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)sizeForItemAtIndex:":{"name":"-sizeForItemAtIndex:","abstract":"\u003cp\u003eThe specific size for the item at the specified index.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)cellForItemAtIndex:":{"name":"-cellForItemAtIndex:","abstract":"\u003cp\u003eReturn a dequeued cell for a given index.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)didUpdateToObject:":{"name":"-didUpdateToObject:","abstract":"\u003cp\u003eUpdates the section controller to a new object.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)shouldSelectItemAtIndex:":{"name":"-shouldSelectItemAtIndex:","abstract":"\u003cp\u003eAsks the section controller if the cell at the specified index path should be selected\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)shouldDeselectItemAtIndex:":{"name":"-shouldDeselectItemAtIndex:","abstract":"\u003cp\u003eAsks the section controller if the cell at the specified index path should be deselected\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)didSelectItemAtIndex:":{"name":"-didSelectItemAtIndex:","abstract":"\u003cp\u003eTells the section controller that the cell at the specified index path was selected.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)didDeselectItemAtIndex:":{"name":"-didDeselectItemAtIndex:","abstract":"\u003cp\u003eTells the section controller that the cell at the specified index path was deselected.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)didHighlightItemAtIndex:":{"name":"-didHighlightItemAtIndex:","abstract":"\u003cp\u003eTells the section controller that the cell at the specified index path was highlighted.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)didUnhighlightItemAtIndex:":{"name":"-didUnhighlightItemAtIndex:","abstract":"\u003cp\u003eTells the section controller that the cell at the specified index path was unhighlighted.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)contextMenuConfigurationForItemAtIndex:point:":{"name":"-contextMenuConfigurationForItemAtIndex:point:","abstract":"\u003cp\u003eTells the section controller that the cell has requested a menu configuration.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)canMoveItemAtIndex:":{"name":"-canMoveItemAtIndex:","abstract":"\u003cp\u003eIdentifies whether an object can be moved through interactive reordering.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(im)moveObjectFromIndex:toIndex:":{"name":"-moveObjectFromIndex:toIndex:","abstract":"\u003cp\u003eNotifies the section that a list object should move within a section as the result of interactive reordering.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)viewController":{"name":"viewController","abstract":"\u003cp\u003eThe view controller housing the adapter that created this section controller.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)collectionContext":{"name":"collectionContext","abstract":"\u003cp\u003eA context object for interacting with the collection.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)section":{"name":"section","abstract":"\u003cp\u003eReturns the section within the list for this section controller.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)isFirstSection":{"name":"isFirstSection","abstract":"\u003cp\u003eReturns \u003ccode\u003eYES\u003c/code\u003e if the section controller is the first section in the list, \u003ccode\u003eNO\u003c/code\u003e otherwise.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)isLastSection":{"name":"isLastSection","abstract":"\u003cp\u003eReturns \u003ccode\u003eYES\u003c/code\u003e if the section controller is the last section in the list, \u003ccode\u003eNO\u003c/code\u003e otherwise.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)inset":{"name":"inset","abstract":"\u003cp\u003eThe margins used to lay out content in the section controller.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)minimumLineSpacing":{"name":"minimumLineSpacing","abstract":"\u003cp\u003eThe minimum spacing to use between rows of items.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)minimumInteritemSpacing":{"name":"minimumInteritemSpacing","abstract":"\u003cp\u003eThe minimum spacing to use between items in the same row.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)supplementaryViewSource":{"name":"supplementaryViewSource","abstract":"\u003cp\u003eThe supplementary view source for the section controller. Can be \u003ccode\u003enil\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)displayDelegate":{"name":"displayDelegate","abstract":"\u003cp\u003eAn object that handles display events for the section controller. Can be \u003ccode\u003enil\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)workingRangeDelegate":{"name":"workingRangeDelegate","abstract":"\u003cp\u003eAn object that handles working range events for the section controller. Can be \u003ccode\u003enil\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)scrollDelegate":{"name":"scrollDelegate","abstract":"\u003cp\u003eAn object that handles scroll events for the section controller. Can be \u003ccode\u003enil\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListSectionController.html#/c:objc(cs)IGListSectionController(py)transitionDelegate":{"name":"transitionDelegate","abstract":"\u003cp\u003eAn object that handles transition events for the section controller. Can be \u003ccode\u003enil\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListSectionController"},"Classes/IGListGenericSectionController.html#/c:objc(cs)IGListGenericSectionController(py)object":{"name":"object","abstract":"\u003cp\u003eThe object mapped to this section controller. Matches the object provided in","parent_name":"IGListGenericSectionController"},"Classes/IGListGenericSectionController.html#/c:objc(cs)IGListGenericSectionController(im)didUpdateToObject:":{"name":"-didUpdateToObject:","abstract":"\u003cp\u003eUpdates the section controller to a new object.\u003c/p\u003e","parent_name":"IGListGenericSectionController"},"Classes/IGListCollectionViewLayoutInvalidationContext.html#/c:objc(cs)IGListCollectionViewLayoutInvalidationContext(py)invalidateSupplementaryListAttributes":{"name":"invalidateSupplementaryListAttributes","abstract":"\u003cp\u003eFalse by default. If true, supplementary list item attributes (headers and footers) will be invalidated.\u003c/p\u003e","parent_name":"IGListCollectionViewLayoutInvalidationContext"},"Classes/IGListCollectionViewLayoutInvalidationContext.html#/c:objc(cs)IGListCollectionViewLayoutInvalidationContext(py)invalidateAllListAttributes":{"name":"invalidateAllListAttributes","abstract":"\u003cp\u003eFalse by default. If true, all list item attributes will be invalidated.\u003c/p\u003e","parent_name":"IGListCollectionViewLayoutInvalidationContext"},"Classes/IGListCollectionViewLayout.html#/c:objc(cs)IGListCollectionViewLayout(py)scrollDirection":{"name":"scrollDirection","abstract":"\u003cp\u003eDirection in which layout will be scrollable; items will be flowed in the perpendicular direction, \u0026ldquo;newlining\u0026rdquo; when they","parent_name":"IGListCollectionViewLayout"},"Classes/IGListCollectionViewLayout.html#/c:objc(cs)IGListCollectionViewLayout(py)stickyHeaderYOffset":{"name":"stickyHeaderYOffset","abstract":"\u003cp\u003eSet this to adjust the offset of the sticky headers in the scrolling direction. Can be used to change the sticky","parent_name":"IGListCollectionViewLayout"},"Classes/IGListCollectionViewLayout.html#/c:objc(cs)IGListCollectionViewLayout(py)showHeaderWhenEmpty":{"name":"showHeaderWhenEmpty","abstract":"\u003cp\u003eSet this to \u003ccode\u003eYES\u003c/code\u003e to show sticky header when a section had no item. Default is \u003ccode\u003eNO\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListCollectionViewLayout"},"Classes/IGListCollectionViewLayout.html#/c:objc(cs)IGListCollectionViewLayout(py)preserveLayoutCacheOnInvalidateLayout":{"name":"preserveLayoutCacheOnInvalidateLayout","abstract":"\u003cp\u003eSet this to \u003ccode\u003eYES\u003c/code\u003e to keep layout cache when invalidateLayout is called. Default is \u003ccode\u003eNO\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListCollectionViewLayout"},"Classes/IGListCollectionViewLayout.html#/c:objc(cs)IGListCollectionViewLayout(im)initWithStickyHeaders:scrollDirection:topContentInset:stretchToEdge:":{"name":"-initWithStickyHeaders:scrollDirection:topContentInset:stretchToEdge:","abstract":"\u003cp\u003eCreate and return a new collection view layout.\u003c/p\u003e","parent_name":"IGListCollectionViewLayout"},"Classes/IGListCollectionViewLayout.html#/c:objc(cs)IGListCollectionViewLayout(im)initWithStickyHeaders:topContentInset:stretchToEdge:":{"name":"-initWithStickyHeaders:topContentInset:stretchToEdge:","abstract":"\u003cp\u003eCreate and return a new vertically scrolling collection view layout.\u003c/p\u003e","parent_name":"IGListCollectionViewLayout"},"Classes/IGListCollectionView.html#/c:objc(cs)IGListCollectionView(im)initWithFrame:listCollectionViewLayout:":{"name":"-initWithFrame:listCollectionViewLayout:","abstract":"\u003cp\u003eCreate a new view with an \u003ccode\u003eIGListcollectionViewLayout\u003c/code\u003e class or subclass.\u003c/p\u003e","parent_name":"IGListCollectionView"},"Classes/IGListBindingSingleSectionController.html#/c:objc(cs)IGListBindingSingleSectionController(im)cellClass":{"name":"-cellClass","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e","parent_name":"IGListBindingSingleSectionController"},"Classes/IGListBindingSingleSectionController.html#/c:objc(cs)IGListBindingSingleSectionController(im)configureCell:withViewModel:":{"name":"-configureCell:withViewModel:","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e","parent_name":"IGListBindingSingleSectionController"},"Classes/IGListBindingSingleSectionController.html#/c:objc(cs)IGListBindingSingleSectionController(im)sizeForViewModel:":{"name":"-sizeForViewModel:","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e","parent_name":"IGListBindingSingleSectionController"},"Classes/IGListBindingSingleSectionController.html#/c:objc(cs)IGListBindingSingleSectionController(im)didSelectItemWithCell:":{"name":"-didSelectItemWithCell:","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e","parent_name":"IGListBindingSingleSectionController"},"Classes/IGListBindingSingleSectionController.html#/c:objc(cs)IGListBindingSingleSectionController(im)didDeselectItemWithCell:":{"name":"-didDeselectItemWithCell:","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e","parent_name":"IGListBindingSingleSectionController"},"Classes/IGListBindingSingleSectionController.html#/c:objc(cs)IGListBindingSingleSectionController(im)didHighlightItemWithCell:":{"name":"-didHighlightItemWithCell:","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e","parent_name":"IGListBindingSingleSectionController"},"Classes/IGListBindingSingleSectionController.html#/c:objc(cs)IGListBindingSingleSectionController(im)didUnhighlightItemWithCell:":{"name":"-didUnhighlightItemWithCell:","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e","parent_name":"IGListBindingSingleSectionController"},"Classes/IGListBindingSingleSectionController.html#/c:objc(cs)IGListBindingSingleSectionController(im)isDisplayingCell":{"name":"-isDisplayingCell","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e","parent_name":"IGListBindingSingleSectionController"},"Classes/IGListBindingSectionController.html#/c:objc(cs)IGListBindingSectionController(py)dataSource":{"name":"dataSource","abstract":"\u003cp\u003eA data source that transforms a top-level object into view models, and returns cells and sizes for given view models.\u003c/p\u003e","parent_name":"IGListBindingSectionController"},"Classes/IGListBindingSectionController.html#/c:objc(cs)IGListBindingSectionController(py)selectionDelegate":{"name":"selectionDelegate","abstract":"\u003cp\u003eA delegate that receives selection events from cells in an \u003ccode\u003eIGListBindingSectionController\u003c/code\u003e instance.\u003c/p\u003e","parent_name":"IGListBindingSectionController"},"Classes/IGListBindingSectionController.html#/c:objc(cs)IGListBindingSectionController(py)object":{"name":"object","abstract":"\u003cp\u003eThe object currently assigned to the section controller, if any.\u003c/p\u003e","parent_name":"IGListBindingSectionController"},"Classes/IGListBindingSectionController.html#/c:objc(cs)IGListBindingSectionController(py)viewModels":{"name":"viewModels","abstract":"\u003cp\u003eThe array of view models created from the data source. Values are changed when the top-level object changes or by","parent_name":"IGListBindingSectionController"},"Classes/IGListBindingSectionController.html#/c:objc(cs)IGListBindingSectionController(im)updateAnimated:completion:":{"name":"-updateAnimated:completion:","abstract":"\u003cp\u003eTells the section controller to query for new view models, diff the changes, and update its cells.\u003c/p\u003e","parent_name":"IGListBindingSectionController"},"Classes/IGListBindingSectionController.html#/c:objc(cs)IGListBindingSectionController(im)moveObjectFromIndex:toIndex:":{"name":"-moveObjectFromIndex:toIndex:","abstract":"\u003cp\u003eNotifies the section that a list object should move within a section as the result of interactive reordering.\u003c/p\u003e","parent_name":"IGListBindingSectionController"},"Classes/IGListAdapterUpdater.html#/c:objc(cs)IGListAdapterUpdater(py)delegate":{"name":"delegate","abstract":"\u003cp\u003eThe delegate that receives events with data on the performance of a transition.\u003c/p\u003e","parent_name":"IGListAdapterUpdater"},"Classes/IGListAdapterUpdater.html#/c:objc(cs)IGListAdapterUpdater(py)sectionMovesAsDeletesInserts":{"name":"sectionMovesAsDeletesInserts","abstract":"\u003cp\u003eA flag indicating if a section move should be treated as a section \u0026ldquo;delete, then insert\u0026rdquo; operation. This can be useful if you\u0026rsquo;re","parent_name":"IGListAdapterUpdater"},"Classes/IGListAdapterUpdater.html#/c:objc(cs)IGListAdapterUpdater(py)singleItemSectionUpdates":{"name":"singleItemSectionUpdates","abstract":"\u003cp\u003eONLY used when there is N section, but each section only contains 1 item.","parent_name":"IGListAdapterUpdater"},"Classes/IGListAdapterUpdater.html#/c:objc(cs)IGListAdapterUpdater(py)preferItemReloadsForSectionReloads":{"name":"preferItemReloadsForSectionReloads","abstract":"\u003cp\u003eA flag indicating that section reloads should be treated as item reloads, instead of converting them to \u0026ldquo;delete, then insert\u0026rdquo; operations.","parent_name":"IGListAdapterUpdater"},"Classes/IGListAdapterUpdater.html#/c:objc(cs)IGListAdapterUpdater(py)allowsReloadingOnTooManyUpdates":{"name":"allowsReloadingOnTooManyUpdates","abstract":"\u003cp\u003eIf there\u0026rsquo;s more than 100 diff updates, fallback to using \u003ccode\u003ereloadData\u003c/code\u003e to avoid stalling the main thread.\u003c/p\u003e","parent_name":"IGListAdapterUpdater"},"Classes/IGListAdapterUpdater.html#/c:objc(cs)IGListAdapterUpdater(py)allowsBackgroundDiffing":{"name":"allowsBackgroundDiffing","abstract":"\u003cp\u003eAllow the diffing to be performed on a background thread.\u003c/p\u003e","parent_name":"IGListAdapterUpdater"},"Classes/IGListAdapterUpdater.html#/c:objc(cs)IGListAdapterUpdater(py)experiments":{"name":"experiments","abstract":"\u003cp\u003eA bitmask of experiments to conduct on the updater.\u003c/p\u003e","parent_name":"IGListAdapterUpdater"},"Classes/IGListAdapterUpdater.html#/c:objc(cs)IGListAdapterUpdater(py)adaptiveDiffingExperimentConfig":{"name":"adaptiveDiffingExperimentConfig","abstract":"\u003cp\u003eThis is an experimental feature to customize how diffing is performed. If there’s clear value, we’ll make this a real API and make","parent_name":"IGListAdapterUpdater"},"Classes/IGListAdapterUpdater.html#/c:objc(cs)IGListAdapterUpdater(py)adaptiveCoalescingExperimentConfig":{"name":"adaptiveCoalescingExperimentConfig","abstract":"\u003cp\u003eCustomize how coalescing works to speed up some updates\u003c/p\u003e","parent_name":"IGListAdapterUpdater"},"Classes/IGListAdapterDelegateAnnouncer.html#/c:objc(cs)IGListAdapterDelegateAnnouncer(cm)sharedInstance":{"name":"+sharedInstance","abstract":"\u003cp\u003eDefault announcer for all \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListAdapter.html\"\u003eIGListAdapter\u003c/a\u003e\u003c/code\u003e\u003c/p\u003e","parent_name":"IGListAdapterDelegateAnnouncer"},"Classes/IGListAdapterDelegateAnnouncer.html#/c:objc(cs)IGListAdapterDelegateAnnouncer(im)addListener:":{"name":"-addListener:","abstract":"\u003cp\u003eAdd a delegate that will receive callbacks for all \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListAdapter.html\"\u003eIGListAdapter\u003c/a\u003e\u003c/code\u003e.","parent_name":"IGListAdapterDelegateAnnouncer"},"Classes/IGListAdapterDelegateAnnouncer.html#/c:objc(cs)IGListAdapterDelegateAnnouncer(im)removeListener:":{"name":"-removeListener:","abstract":"\u003cp\u003eRemove delegate\u003c/p\u003e","parent_name":"IGListAdapterDelegateAnnouncer"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(py)viewController":{"name":"viewController","abstract":"\u003cp\u003eThe view controller that houses the adapter.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(py)collectionView":{"name":"collectionView","abstract":"\u003cp\u003eThe collection view used with the adapter.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(py)dataSource":{"name":"dataSource","abstract":"\u003cp\u003eThe object that acts as the data source for the adapter.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(py)delegate":{"name":"delegate","abstract":"\u003cp\u003eThe object that receives top-level events for section controllers.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(py)collectionViewDelegate":{"name":"collectionViewDelegate","abstract":"\u003cp\u003eThe object that receives \u003ccode\u003eUICollectionViewDelegate\u003c/code\u003e events.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(py)scrollViewDelegate":{"name":"scrollViewDelegate","abstract":"\u003cp\u003eThe object that receives \u003ccode\u003eUIScrollViewDelegate\u003c/code\u003e events.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(py)moveDelegate":{"name":"moveDelegate","abstract":"\u003cp\u003eThe object that receives \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbProtocols/IGListAdapterMoveDelegate.html\"\u003eIGListAdapterMoveDelegate\u003c/a\u003e\u003c/code\u003e events resulting from interactive reordering of sections.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(py)performanceDelegate":{"name":"performanceDelegate","abstract":"\u003cp\u003eThe object that receives \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbProtocols/IGListAdapterPerformanceDelegate.html\"\u003eIGListAdapterPerformanceDelegate\u003c/a\u003e\u003c/code\u003e events to measure performance.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(py)updater":{"name":"updater","abstract":"\u003cp\u003eThe updater for the adapter.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(py)experiments":{"name":"experiments","abstract":"\u003cp\u003eA bitmask of experiments to conduct on the adapter.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(py)autoDeselectEnabled":{"name":"autoDeselectEnabled","abstract":"\u003cp\u003eWhen true, we automatically deselect cells after they are selected (animated), so each section-controller doesn\u0026rsquo;t have to.","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)initWithUpdater:viewController:workingRangeSize:":{"name":"-initWithUpdater:viewController:workingRangeSize:","abstract":"\u003cp\u003eInitializes a new \u003ccode\u003eIGListAdapter\u003c/code\u003e object.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)initWithUpdater:viewController:":{"name":"-initWithUpdater:viewController:","abstract":"\u003cp\u003eInitializes a new \u003ccode\u003eIGListAdapter\u003c/code\u003e object with a working range of \u003ccode\u003e0\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)performUpdatesAnimated:completion:":{"name":"-performUpdatesAnimated:completion:","abstract":"\u003cp\u003ePerform an update from the previous state of the data source. This is analogous to calling","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)reloadDataWithCompletion:":{"name":"-reloadDataWithCompletion:","abstract":"\u003cp\u003ePerform an immediate reload of the data in the data source, discarding the old objects.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)reloadObjects:":{"name":"-reloadObjects:","abstract":"\u003cp\u003eReload the list for only the specified objects.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)sectionControllerForSection:":{"name":"-sectionControllerForSection:","abstract":"\u003cp\u003eQuery the section controller at a given section index. Constant time lookup.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)sectionForSectionController:":{"name":"-sectionForSectionController:","abstract":"\u003cp\u003eQuery the section index of a list. Constant time lookup.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)sectionControllerForObject:":{"name":"-sectionControllerForObject:","abstract":"\u003cp\u003eReturns the section controller for the specified object. Constant time lookup.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)objectForSectionController:":{"name":"-objectForSectionController:","abstract":"\u003cp\u003eReturns the object corresponding to the specified section controller in the list. Constant time lookup.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)objectAtSection:":{"name":"-objectAtSection:","abstract":"\u003cp\u003eReturns the object corresponding to a section in the list. Constant time lookup.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)sectionForObject:":{"name":"-sectionForObject:","abstract":"\u003cp\u003eReturns the section corresponding to the specified object in the list. Constant time lookup.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)objects":{"name":"-objects","abstract":"\u003cp\u003eReturns a copy of all the objects currently driving the adapter.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)visibleSectionControllers":{"name":"-visibleSectionControllers","abstract":"\u003cp\u003eAn unordered array of the currently visible section controllers.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)visibleObjects":{"name":"-visibleObjects","abstract":"\u003cp\u003eAn unordered array of the currently visible objects.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)indexesOfVisibleObjects":{"name":"-indexesOfVisibleObjects","abstract":"\u003cp\u003eLess performant that \u003ccode\u003evisibleObjects\u003c/code\u003e but gives you an ordering to the list of visible objects in \u003ccode\u003eself.objects\u003c/code\u003e.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)visibleCellsForObject:":{"name":"-visibleCellsForObject:","abstract":"\u003cp\u003eAn unordered array of the currently visible cells for a given object.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)scrollToObject:supplementaryKinds:scrollDirection:scrollPosition:additionalOffset:animated:":{"name":"-scrollToObject:supplementaryKinds:scrollDirection:scrollPosition:additionalOffset:animated:","abstract":"\u003cp\u003eScrolls to the specified object in the list adapter.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)indexPathForFirstVisibleItem":{"name":"-indexPathForFirstVisibleItem","abstract":"\u003cp\u003eReturns the index path for the first visible cell that has been scrolled to.","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)offsetForFirstVisibleItemWithScrollDirection:":{"name":"-offsetForFirstVisibleItemWithScrollDirection:","abstract":"\u003cp\u003eGets the scroll offset of the first visible cell scrolled into in the collection view.","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)sizeForItemAtIndexPath:":{"name":"-sizeForItemAtIndexPath:","abstract":"\u003cp\u003eReturns the size of a cell at the specified index path.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)sizeForSupplementaryViewOfKind:atIndexPath:":{"name":"-sizeForSupplementaryViewOfKind:atIndexPath:","abstract":"\u003cp\u003eReturns the size of a supplementary view in the list at the specified index path.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)addUpdateListener:":{"name":"-addUpdateListener:","abstract":"\u003cp\u003eAdds a listener to the list adapter.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListAdapter.html#/c:objc(cs)IGListAdapter(im)removeUpdateListener:":{"name":"-removeUpdateListener:","abstract":"\u003cp\u003eRemoves a listener from the list adapter.\u003c/p\u003e","parent_name":"IGListAdapter"},"Classes/IGListMoveIndexPath.html#/c:objc(cs)IGListMoveIndexPath(py)from":{"name":"from","abstract":"\u003cp\u003eAn index path in the old collection.\u003c/p\u003e","parent_name":"IGListMoveIndexPath"},"Classes/IGListMoveIndexPath.html#/c:objc(cs)IGListMoveIndexPath(py)to":{"name":"to","abstract":"\u003cp\u003eAn index path in the new collection.\u003c/p\u003e","parent_name":"IGListMoveIndexPath"},"Classes/IGListMoveIndex.html#/c:objc(cs)IGListMoveIndex(py)from":{"name":"from","abstract":"\u003cp\u003eAn index in the old collection.\u003c/p\u003e","parent_name":"IGListMoveIndex"},"Classes/IGListMoveIndex.html#/c:objc(cs)IGListMoveIndex(py)to":{"name":"to","abstract":"\u003cp\u003eAn index in the new collection.\u003c/p\u003e","parent_name":"IGListMoveIndex"},"Classes/IGListIndexSetResult.html#/c:objc(cs)IGListIndexSetResult(py)inserts":{"name":"inserts","abstract":"\u003cp\u003eThe indexes inserted into the new collection.\u003c/p\u003e","parent_name":"IGListIndexSetResult"},"Classes/IGListIndexSetResult.html#/c:objc(cs)IGListIndexSetResult(py)deletes":{"name":"deletes","abstract":"\u003cp\u003eThe indexes deleted from the old collection.\u003c/p\u003e","parent_name":"IGListIndexSetResult"},"Classes/IGListIndexSetResult.html#/c:objc(cs)IGListIndexSetResult(py)updates":{"name":"updates","abstract":"\u003cp\u003eThe indexes in the old collection that need updated.\u003c/p\u003e","parent_name":"IGListIndexSetResult"},"Classes/IGListIndexSetResult.html#/c:objc(cs)IGListIndexSetResult(py)moves":{"name":"moves","abstract":"\u003cp\u003eThe moves from an index in the old collection to an index in the new collection.\u003c/p\u003e","parent_name":"IGListIndexSetResult"},"Classes/IGListIndexSetResult.html#/c:objc(cs)IGListIndexSetResult(py)hasChanges":{"name":"hasChanges","abstract":"\u003cp\u003eA Read-only boolean that indicates whether the result has any changes or not.","parent_name":"IGListIndexSetResult"},"Classes/IGListIndexSetResult.html#/c:objc(cs)IGListIndexSetResult(im)oldIndexForIdentifier:":{"name":"-oldIndexForIdentifier:","abstract":"\u003cp\u003eReturns the index of the object with the specified identifier \u003cem\u003ebefore\u003c/em\u003e the diff.\u003c/p\u003e","parent_name":"IGListIndexSetResult"},"Classes/IGListIndexSetResult.html#/c:objc(cs)IGListIndexSetResult(im)newIndexForIdentifier:":{"name":"-newIndexForIdentifier:","abstract":"\u003cp\u003eReturns the index of the object with the specified identifier \u003cem\u003eafter\u003c/em\u003e the diff.\u003c/p\u003e","parent_name":"IGListIndexSetResult"},"Classes/IGListIndexSetResult.html#/c:objc(cs)IGListIndexSetResult(im)resultForBatchUpdates":{"name":"-resultForBatchUpdates","abstract":"\u003cp\u003eCreates a new result object with operations safe for use in \u003ccode\u003eUITableView\u003c/code\u003e and \u003ccode\u003eUICollectionView\u003c/code\u003e batch updates.\u003c/p\u003e","parent_name":"IGListIndexSetResult"},"Classes/IGListIndexPathResult.html#/c:objc(cs)IGListIndexPathResult(py)inserts":{"name":"inserts","abstract":"\u003cp\u003eThe index paths inserted into the new collection.\u003c/p\u003e","parent_name":"IGListIndexPathResult"},"Classes/IGListIndexPathResult.html#/c:objc(cs)IGListIndexPathResult(py)deletes":{"name":"deletes","abstract":"\u003cp\u003eThe index paths deleted from the old collection.\u003c/p\u003e","parent_name":"IGListIndexPathResult"},"Classes/IGListIndexPathResult.html#/c:objc(cs)IGListIndexPathResult(py)updates":{"name":"updates","abstract":"\u003cp\u003eThe index paths in the old collection that need updated.\u003c/p\u003e","parent_name":"IGListIndexPathResult"},"Classes/IGListIndexPathResult.html#/c:objc(cs)IGListIndexPathResult(py)moves":{"name":"moves","abstract":"\u003cp\u003eThe moves from an index path in the old collection to an index path in the new collection.\u003c/p\u003e","parent_name":"IGListIndexPathResult"},"Classes/IGListIndexPathResult.html#/c:objc(cs)IGListIndexPathResult(py)hasChanges":{"name":"hasChanges","abstract":"\u003cp\u003eA Read-only boolean that indicates whether the result has any changes or not.","parent_name":"IGListIndexPathResult"},"Classes/IGListIndexPathResult.html#/c:objc(cs)IGListIndexPathResult(im)oldIndexPathForIdentifier:":{"name":"-oldIndexPathForIdentifier:","abstract":"\u003cp\u003eReturns the index path of the object with the specified identifier \u003cem\u003ebefore\u003c/em\u003e the diff.\u003c/p\u003e","parent_name":"IGListIndexPathResult"},"Classes/IGListIndexPathResult.html#/c:objc(cs)IGListIndexPathResult(im)newIndexPathForIdentifier:":{"name":"-newIndexPathForIdentifier:","abstract":"\u003cp\u003eReturns the index path of the object with the specified identifier \u003cem\u003eafter\u003c/em\u003e the diff.\u003c/p\u003e","parent_name":"IGListIndexPathResult"},"Classes/IGListIndexPathResult.html#/c:objc(cs)IGListIndexPathResult(im)resultForBatchUpdates":{"name":"-resultForBatchUpdates","abstract":"\u003cp\u003eCreates a new result object with operations safe for use in \u003ccode\u003eUITableView\u003c/code\u003e and \u003ccode\u003eUICollectionView\u003c/code\u003e batch updates.\u003c/p\u003e","parent_name":"IGListIndexPathResult"},"Classes/IGListBatchUpdateData.html#/c:objc(cs)IGListBatchUpdateData(py)insertSections":{"name":"insertSections","abstract":"\u003cp\u003eSection insert indexes.\u003c/p\u003e","parent_name":"IGListBatchUpdateData"},"Classes/IGListBatchUpdateData.html#/c:objc(cs)IGListBatchUpdateData(py)deleteSections":{"name":"deleteSections","abstract":"\u003cp\u003eSection delete indexes.\u003c/p\u003e","parent_name":"IGListBatchUpdateData"},"Classes/IGListBatchUpdateData.html#/c:objc(cs)IGListBatchUpdateData(py)moveSections":{"name":"moveSections","abstract":"\u003cp\u003eSection moves.\u003c/p\u003e","parent_name":"IGListBatchUpdateData"},"Classes/IGListBatchUpdateData.html#/c:objc(cs)IGListBatchUpdateData(py)insertIndexPaths":{"name":"insertIndexPaths","abstract":"\u003cp\u003eItem insert index paths.\u003c/p\u003e","parent_name":"IGListBatchUpdateData"},"Classes/IGListBatchUpdateData.html#/c:objc(cs)IGListBatchUpdateData(py)deleteIndexPaths":{"name":"deleteIndexPaths","abstract":"\u003cp\u003eItem delete index paths.\u003c/p\u003e","parent_name":"IGListBatchUpdateData"},"Classes/IGListBatchUpdateData.html#/c:objc(cs)IGListBatchUpdateData(py)updateIndexPaths":{"name":"updateIndexPaths","abstract":"\u003cp\u003eItem update index paths.\u003c/p\u003e","parent_name":"IGListBatchUpdateData"},"Classes/IGListBatchUpdateData.html#/c:objc(cs)IGListBatchUpdateData(py)moveIndexPaths":{"name":"moveIndexPaths","abstract":"\u003cp\u003eItem moves.\u003c/p\u003e","parent_name":"IGListBatchUpdateData"},"Classes/IGListBatchUpdateData.html#/c:objc(cs)IGListBatchUpdateData(im)initWithInsertSections:deleteSections:moveSections:insertIndexPaths:deleteIndexPaths:updateIndexPaths:moveIndexPaths:":{"name":"-initWithInsertSections:deleteSections:moveSections:insertIndexPaths:deleteIndexPaths:updateIndexPaths:moveIndexPaths:","abstract":"\u003cp\u003eCreates a new batch update object with section and item operations.\u003c/p\u003e","parent_name":"IGListBatchUpdateData"},"Classes/IGListBatchUpdateData.html":{"name":"IGListBatchUpdateData","abstract":"\u003cp\u003eAn instance of \u003ccode\u003eIGListBatchUpdateData\u003c/code\u003e takes section indexes and item index paths"},"Classes/IGListIndexPathResult.html":{"name":"IGListIndexPathResult","abstract":"\u003cp\u003eA result object returned when diffing with sections.\u003c/p\u003e"},"Classes/IGListIndexSetResult.html":{"name":"IGListIndexSetResult","abstract":"\u003cp\u003eA result object returned when diffing with indexes.\u003c/p\u003e"},"Classes/IGListMoveIndex.html":{"name":"IGListMoveIndex","abstract":"\u003cp\u003eAn object representing a move between indexes.\u003c/p\u003e"},"Classes/IGListMoveIndexPath.html":{"name":"IGListMoveIndexPath","abstract":"\u003cp\u003eAn object representing a move between indexes.\u003c/p\u003e"},"Classes/IGListAdapter.html":{"name":"IGListAdapter","abstract":"\u003cp\u003e\u003ccode\u003eIGListAdapter\u003c/code\u003e objects provide an abstraction for feeds of objects in a \u003ccode\u003eUICollectionView\u003c/code\u003e by breaking each object"},"Classes/IGListAdapterDelegateAnnouncer.html":{"name":"IGListAdapterDelegateAnnouncer","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e"},"Classes/IGListAdapterUpdater.html":{"name":"IGListAdapterUpdater","abstract":"\u003cp\u003eAn \u003ccode\u003eIGListAdapterUpdater\u003c/code\u003e is a concrete type that conforms to \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbProtocols/IGListUpdatingDelegate.html\"\u003eIGListUpdatingDelegate\u003c/a\u003e\u003c/code\u003e."},"Classes/IGListBindingSectionController.html":{"name":"IGListBindingSectionController","abstract":"\u003cp\u003eThis section controller uses a data source to transform its \u0026ldquo;top level\u0026rdquo; object into an array of diffable view models."},"Classes/IGListBindingSingleSectionController.html":{"name":"IGListBindingSingleSectionController","abstract":"\u003cp\u003eSpecial section controller that only contains a single item, and it will apply the view model update during -didUpdateObject: call, usually happened inside -[UICollectionView performBatchUpdates:completion:].\u003c/p\u003e"},"Classes/IGListCollectionView.html":{"name":"IGListCollectionView","abstract":"\u003cp\u003eThis \u003ccode\u003eUICollectionView\u003c/code\u003e subclass allows for partial layout invalidation using \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/IGListCollectionViewLayout.html\"\u003eIGListCollectionViewLayout\u003c/a\u003e\u003c/code\u003e,"},"Classes/IGListCollectionViewLayout.html":{"name":"IGListCollectionViewLayout","abstract":"\u003cp\u003eThis UICollectionViewLayout subclass is for vertically or horizontally scrolling lists of data with variable widths and"},"Classes/IGListCollectionViewLayoutInvalidationContext.html":{"name":"IGListCollectionViewLayoutInvalidationContext","abstract":"\u003cp\u003eThe default invalidation context class used by IGListCollectionViewLayout.\u003c/p\u003e"},"Classes/IGListGenericSectionController.html":{"name":"IGListGenericSectionController","abstract":"\u003cp\u003eThis class adds a helper layer to \u003ccode\u003eIGListSectionController\u0010\u003c/code\u003e to automatically store a generic object in"},"Classes.html#/c:objc(cs)IGListReloadDataUpdater":{"name":"IGListReloadDataUpdater","abstract":"\u003cp\u003eAn \u003ccode\u003eIGListReloadDataUpdater\u003c/code\u003e is a concrete type that conforms to \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbProtocols/IGListUpdatingDelegate.html\"\u003eIGListUpdatingDelegate\u003c/a\u003e\u003c/code\u003e."},"Classes/IGListSectionController.html":{"name":"IGListSectionController","abstract":"\u003cp\u003eThe base class for section controllers used in a list. This class is intended to be subclassed.\u003c/p\u003e"},"Classes/IGListSingleSectionController.html":{"name":"IGListSingleSectionController","abstract":"\u003cp\u003eThis section controller is meant to make building simple, single-cell lists easier. By providing the type of cell, a block"},"Classes/IGListTransitionData.html":{"name":"IGListTransitionData","abstract":"\u003cp\u003eContainer object that holds the data needed for an update.\u003c/p\u003e"},"Categories/UIViewController%28IGListAdapter%29.html#/c:objc(cs)UIViewController(im)associatedListAdapters":{"name":"-associatedListAdapters","abstract":"\u003cp\u003eAdapters that have this VC as their \u003ccode\u003eviewController\u003c/code\u003e\u003c/p\u003e","parent_name":"UIViewController(IGListAdapter)"},"Categories/UIViewController%28IGListAdapter%29.html":{"name":"UIViewController(IGListAdapter)","abstract":"\u003cp\u003eUndocumented\u003c/p\u003e"},"best-practices-and-faq.html":{"name":"Best Practices and FAQ"},"generating-your-models-using-remodel.html":{"name":"Generating your models using remodel"},"getting-started.html":{"name":"Getting Started"},"iglistdiffable-and-equality.html":{"name":"IGListDiffable and Equality"},"installation.html":{"name":"Installation"},"migration.html":{"name":"Migration"},"modeling-and-binding.html":{"name":"Modeling and Binding"},"vision.html":{"name":"VISION"},"working-with-core-data.html":{"name":"Working with Core Data"},"working-with-uicollectionview.html":{"name":"Working with UICollectionView"},"Guides.html":{"name":"Guides","abstract":"\u003cp\u003eThe following guides are available globally.\u003c/p\u003e"},"Categories.html":{"name":"Categories","abstract":"\u003cp\u003eThe following categories are available globally.\u003c/p\u003e"},"Classes.html":{"name":"Classes","abstract":"\u003cp\u003eThe following classes are available globally.\u003c/p\u003e"},"Constants.html":{"name":"Constants","abstract":"\u003cp\u003eThe following constants are available globally.\u003c/p\u003e"},"Enums.html":{"name":"Enumerations","abstract":"\u003cp\u003eThe following enumerations are available globally.\u003c/p\u003e"},"Protocols.html":{"name":"Protocols","abstract":"\u003cp\u003eThe following protocols are available globally.\u003c/p\u003e"},"Type%20Definitions.html":{"name":"Type Definitions","abstract":"\u003cp\u003eThe following type definitions are available globally.\u003c/p\u003e"},"Functions.html":{"name":"Functions","abstract":"\u003cp\u003eThe following functions are available globally.\u003c/p\u003e"},"Structs.html":{"name":"Structures","abstract":"\u003cp\u003eThe following structures are available globally.\u003c/p\u003e"}} |