diff --git a/Carbon.xcodeproj/project.pbxproj b/Carbon.xcodeproj/project.pbxproj index 7155167..897bdff 100644 --- a/Carbon.xcodeproj/project.pbxproj +++ b/Carbon.xcodeproj/project.pbxproj @@ -54,6 +54,8 @@ 6B7ADEF221FDB12B003803BE /* UICollectionViewComponentCellTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B7ADEEE21FDB12A003803BE /* UICollectionViewComponentCellTests.swift */; }; 6B7ADEF321FDB12B003803BE /* UITableViewComponentCellTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B7ADEEF21FDB12A003803BE /* UITableViewComponentCellTests.swift */; }; 6B7ADEF421FDB12B003803BE /* UITableViewComponentHeaderFooterViewTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B7ADEF021FDB12A003803BE /* UITableViewComponentHeaderFooterViewTests.swift */; }; + 6B7EED9E224CA5DD00060872 /* UIScrollViewExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B7EED9D224CA5DD00060872 /* UIScrollViewExtensions.swift */; }; + 6B7EEDA0224CE4E100060872 /* UIScrollViewExtensionsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6B7EED9F224CE4E000060872 /* UIScrollViewExtensionsTests.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -118,6 +120,8 @@ 6B7ADEEE21FDB12A003803BE /* UICollectionViewComponentCellTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UICollectionViewComponentCellTests.swift; sourceTree = ""; }; 6B7ADEEF21FDB12A003803BE /* UITableViewComponentCellTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UITableViewComponentCellTests.swift; sourceTree = ""; }; 6B7ADEF021FDB12A003803BE /* UITableViewComponentHeaderFooterViewTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UITableViewComponentHeaderFooterViewTests.swift; sourceTree = ""; }; + 6B7EED9D224CA5DD00060872 /* UIScrollViewExtensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIScrollViewExtensions.swift; sourceTree = ""; }; + 6B7EED9F224CE4E000060872 /* UIScrollViewExtensionsTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIScrollViewExtensionsTests.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -184,6 +188,7 @@ isa = PBXGroup; children = ( 6B65948821E2532100291AAF /* ComponentContainer.swift */, + 6B7EED9D224CA5DD00060872 /* UIScrollViewExtensions.swift */, ); path = Internal; sourceTree = ""; @@ -286,6 +291,7 @@ isa = PBXGroup; children = ( 6B7ADEE021FBA6D1003803BE /* ComponentContainerTests.swift */, + 6B7EED9F224CE4E000060872 /* UIScrollViewExtensionsTests.swift */, ); path = Internal; sourceTree = ""; @@ -434,6 +440,7 @@ buildActionMask = 2147483647; files = ( 6B6594BB21E2532100291AAF /* UITableViewComponentHeaderFooterView.swift in Sources */, + 6B7EED9E224CA5DD00060872 /* UIScrollViewExtensions.swift in Sources */, 6B6594AC21E2532100291AAF /* Section.swift in Sources */, 6B7ADEE521FD9D11003803BE /* UITableViewCellContent.swift in Sources */, 6B6594B121E2532100291AAF /* UICollectionViewReloadDataUpdater.swift in Sources */, @@ -475,6 +482,7 @@ 6B7ADEDE21FBA59D003803BE /* UICollectionViewReloadDataTests.swift in Sources */, 6B7ADEBC21F8B464003803BE /* AnyComponentTests.swift in Sources */, 6B7ADEF221FDB12B003803BE /* UICollectionViewComponentCellTests.swift in Sources */, + 6B7EEDA0224CE4E100060872 /* UIScrollViewExtensionsTests.swift in Sources */, 6B7ADEBE21F8BF89003803BE /* ViewNodeTests.swift in Sources */, 6B7ADECC21FA067E003803BE /* UITableViewAdapterTests.swift in Sources */, 6B7ADEF321FDB12B003803BE /* UITableViewComponentCellTests.swift in Sources */, diff --git a/README.md b/README.md index c28136b..401617b 100644 --- a/README.md +++ b/README.md @@ -411,6 +411,12 @@ Indicates whether to always call `render` of the component in the visible area a Should use this in case of using the above mentioned `skipReloadComponents`. Default is `false`. +- **keepsContentOffset** +Indicating whether that to reset content offset after updated. +The content offset become unintended position after diffing updates in some case. + If set `true`, revert content offset after updates. +Default is `false`. + [See more](https://ra1028.github.io/Carbon/Updaters.html) #### Element-Specific Behaviors diff --git a/Sources/Internal/UIScrollViewExtensions.swift b/Sources/Internal/UIScrollViewExtensions.swift new file mode 100644 index 0000000..47fbe42 --- /dev/null +++ b/Sources/Internal/UIScrollViewExtensions.swift @@ -0,0 +1,38 @@ +import UIKit + +internal extension UIScrollView { + var _isContetRectContainsBounds: Bool { + return CGRect(origin: .zero, size: contentSize) + .inset(by: availableContentInset.inverted) + .contains(bounds) + } + + var _maxContentOffsetX: CGFloat { + return contentSize.width + availableContentInset.right - bounds.width + } + + var _maxContentOffsetY: CGFloat { + return contentSize.height + availableContentInset.bottom - bounds.height + } + + var _isScrolling: Bool { + return isTracking || isDragging || isDecelerating + } +} + +private extension UIScrollView { + var availableContentInset: UIEdgeInsets { + if #available(iOS 11.0, tvOS 11.0, *) { + return adjustedContentInset + } + else { + return contentInset + } + } +} + +private extension UIEdgeInsets { + var inverted: UIEdgeInsets { + return UIEdgeInsets(top: -top, left: -left, bottom: -bottom, right: -right) + } +} diff --git a/Sources/Updaters/UICollectionViewUpdater.swift b/Sources/Updaters/UICollectionViewUpdater.swift index 73f9c78..007b0e1 100644 --- a/Sources/Updaters/UICollectionViewUpdater.swift +++ b/Sources/Updaters/UICollectionViewUpdater.swift @@ -12,6 +12,10 @@ open class UICollectionViewUpdater(of container: Any, as type: T.Type) -> T? { guard diff --git a/docs/Classes/UICollectionViewUpdater.html b/docs/Classes/UICollectionViewUpdater.html index 400f132..0c59c81 100644 --- a/docs/Classes/UICollectionViewUpdater.html +++ b/docs/Classes/UICollectionViewUpdater.html @@ -289,6 +289,34 @@

Declaration

+
  • +
    + + + + keepsContentOffset + +
    +
    +
    +
    +
    +
    +

    A Bool value indicating whether that to reset content offset after +updated if not scrolling. Default is false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    open var keepsContentOffset: Bool
    + +
    +
    +
    +
    +
  • diff --git a/docs/Classes/UITableViewUpdater.html b/docs/Classes/UITableViewUpdater.html index 234a94c..d696c38 100644 --- a/docs/Classes/UITableViewUpdater.html +++ b/docs/Classes/UITableViewUpdater.html @@ -451,6 +451,34 @@

    Declaration

  • +
  • +
    + + + + keepsContentOffset + +
    +
    +
    +
    +
    +
    +

    A Bool value indicating whether that to reset content offset after +updated if not scrolling. Default is false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    open var keepsContentOffset: Bool
    + +
    +
    +
    +
    +
  • diff --git a/docs/index.html b/docs/index.html index 5e316f5..701d01d 100644 --- a/docs/index.html +++ b/docs/index.html @@ -579,6 +579,11 @@

    Updater Customization

    Indicates whether to always call render of the component in the visible area after updating.
    Should use this in case of using the above mentioned skipReloadComponents.
    Default is false.

  • +
  • keepsContentOffset
    +Indicating whether that to reset content offset after updated.
    +The content offset become unintended position after diffing updates in some case. +If set true, revert content offset after updates.
    +Default is false.

  • See more

    diff --git a/docs/search.json b/docs/search.json index 24f49fb..3357f47 100644 --- a/docs/search.json +++ b/docs/search.json @@ -1 +1 @@ -{"Changesets.html#/s:6Carbon13DataChangeseta":{"name":"DataChangeset","abstract":"

    A set of changes in the collection of sections.

    "},"Changesets.html#/s:6Carbon19StagedDataChangeseta":{"name":"StagedDataChangeset","abstract":"

    An ordered collection of DataChangeset as staged set of changes"},"Protocols/UICollectionReusableViewContent.html#/s:6Carbon31UICollectionReusableViewContentP9didRender2inySo0bcD0C_tF":{"name":"didRender(in:)","abstract":"

    Called after the self is rendered on specified view.

    ","parent_name":"UICollectionReusableViewContent"},"Protocols/UICollectionReusableViewContent.html#/s:6Carbon31UICollectionReusableViewContentP18didRenderComponent2inySo0bcD0C_tF":{"name":"didRenderComponent(in:)","abstract":"

    Called after the component is rendered in self on the specified view.

    ","parent_name":"UICollectionReusableViewContent"},"Protocols/UICollectionReusableViewContent.html#/s:6Carbon31UICollectionReusableViewContentP22viewDidPrepareForReuseyySo0bcD0CF":{"name":"viewDidPrepareForReuse(_:)","abstract":"

    Called just before the view is dequeued.

    ","parent_name":"UICollectionReusableViewContent"},"Protocols/UICollectionViewCellContent.html#/s:6Carbon27UICollectionViewCellContentP9didRender2inySo0bcD0C_tF":{"name":"didRender(in:)","abstract":"

    Called after the self is rendered on specified cell.

    ","parent_name":"UICollectionViewCellContent"},"Protocols/UICollectionViewCellContent.html#/s:6Carbon27UICollectionViewCellContentP18didRenderComponent2inySo0bcD0C_tF":{"name":"didRenderComponent(in:)","abstract":"

    Called after the component is rendered in self on the specified cell.

    ","parent_name":"UICollectionViewCellContent"},"Protocols/UICollectionViewCellContent.html#/s:6Carbon27UICollectionViewCellContentP22cellDidPrepareForReuseyySo0bcD0CF":{"name":"cellDidPrepareForReuse(_:)","abstract":"

    Called just before the cell is dequeued.

    ","parent_name":"UICollectionViewCellContent"},"Protocols/UICollectionViewCellContent.html#/s:6Carbon27UICollectionViewCellContentP21cellDidSetHighlighted_02isI0ySo0bcD0C_SbtF":{"name":"cellDidSetHighlighted(_:isHighlighted:)","abstract":"

    Called when the cell is highlighted.

    ","parent_name":"UICollectionViewCellContent"},"Protocols/UICollectionViewCellContent.html#/s:6Carbon27UICollectionViewCellContentP18cellDidSetSelected_02isI0ySo0bcD0C_SbtF":{"name":"cellDidSetSelected(_:isSelected:)","abstract":"

    Called when the cell is selected.

    ","parent_name":"UICollectionViewCellContent"},"Protocols/UITableViewHeaderFooterViewContent.html#/s:6Carbon023UITableViewHeaderFooterC7ContentP9didRender2inySo0bcdeC0C_tF":{"name":"didRender(in:)","abstract":"

    Called after the self is rendered on specified view.

    ","parent_name":"UITableViewHeaderFooterViewContent"},"Protocols/UITableViewHeaderFooterViewContent.html#/s:6Carbon023UITableViewHeaderFooterC7ContentP18didRenderComponent2inySo0bcdeC0C_tF":{"name":"didRenderComponent(in:)","abstract":"

    Called after the component is rendered in self on the specified view.

    ","parent_name":"UITableViewHeaderFooterViewContent"},"Protocols/UITableViewHeaderFooterViewContent.html#/s:6Carbon023UITableViewHeaderFooterC7ContentP21viwDidPrepareForReuseyySo0bcdeC0CF":{"name":"viwDidPrepareForReuse(_:)","abstract":"

    Called just before the view is dequeued.

    ","parent_name":"UITableViewHeaderFooterViewContent"},"Protocols/UITableViewCellContent.html#/s:6Carbon22UITableViewCellContentP9didRender2inySo0bcD0C_tF":{"name":"didRender(in:)","abstract":"

    Called after the self is rendered on specified cell.

    ","parent_name":"UITableViewCellContent"},"Protocols/UITableViewCellContent.html#/s:6Carbon22UITableViewCellContentP18didRenderComponent2inySo0bcD0C_tF":{"name":"didRenderComponent(in:)","abstract":"

    Called after the component is rendered in self on the specified cell.

    ","parent_name":"UITableViewCellContent"},"Protocols/UITableViewCellContent.html#/s:6Carbon22UITableViewCellContentP22cellDidPrepareForReuseyySo0bcD0CF":{"name":"cellDidPrepareForReuse(_:)","abstract":"

    Called just before the cell is dequeued.

    ","parent_name":"UITableViewCellContent"},"Protocols/UITableViewCellContent.html#/s:6Carbon22UITableViewCellContentP21cellDidSetHighlighted_02isI08animatedySo0bcD0C_S2btF":{"name":"cellDidSetHighlighted(_:isHighlighted:animated:)","abstract":"

    Called when the cell is highlighted.

    ","parent_name":"UITableViewCellContent"},"Protocols/UITableViewCellContent.html#/s:6Carbon22UITableViewCellContentP18cellDidSetSelected_02isI08animatedySo0bcD0C_S2btF":{"name":"cellDidSetSelected(_:isSelected:animated:)","abstract":"

    Called when the cell is selected.

    ","parent_name":"UITableViewCellContent"},"Protocols/UITableViewCellContent.html#/s:6Carbon22UITableViewCellContentP17cellDidSetEditing_02isI08animatedySo0bcD0C_S2btF":{"name":"cellDidSetEditing(_:isEditing:animated:)","abstract":"

    Called when the cell become editing.

    ","parent_name":"UITableViewCellContent"},"Protocols/UITableViewCellContent.html":{"name":"UITableViewCellContent","abstract":"

    Represents the content of the UITableViewCell."},"Protocols/UITableViewHeaderFooterViewContent.html":{"name":"UITableViewHeaderFooterViewContent","abstract":"

    Represents the content of the UITableViewHeaderFooterView."},"Protocols/UICollectionViewCellContent.html":{"name":"UICollectionViewCellContent","abstract":"

    Represents the content of the UICollectionViewCell."},"Protocols/UICollectionReusableViewContent.html":{"name":"UICollectionReusableViewContent","abstract":"

    Represents the content of the UICollectionReusableView."},"Classes/UICollectionComponentReusableView.html#/s:6Carbon33UICollectionComponentReusableViewC15renderedContentypSgvp":{"name":"renderedContent","abstract":"

    A content that rendered on the cell.

    ","parent_name":"UICollectionComponentReusableView"},"Classes/UICollectionComponentReusableView.html#/s:6Carbon33UICollectionComponentReusableViewC08renderedC0AA03AnyC0VSgvp":{"name":"renderedComponent","abstract":"

    A component that latest rendered in the content.

    ","parent_name":"UICollectionComponentReusableView"},"Classes/UICollectionComponentReusableView.html#/c:@M@Carbon@objc(cs)UICollectionComponentReusableView(im)initWithFrame:":{"name":"init(frame:)","abstract":"

    Create a new view with identifier for reuse.

    ","parent_name":"UICollectionComponentReusableView"},"Classes/UICollectionComponentReusableView.html#/c:@M@Carbon@objc(cs)UICollectionComponentReusableView(im)prepareForReuse":{"name":"prepareForReuse()","abstract":"

    Called just before the cell is dequeued.

    ","parent_name":"UICollectionComponentReusableView"},"Classes/UICollectionComponentReusableView.html#/s:6Carbon33UICollectionComponentReusableViewC16didRenderContentyyypF":{"name":"didRenderContent(_:)","abstract":"

    Called after the content is rendered on self.

    ","parent_name":"UICollectionComponentReusableView"},"Classes/UICollectionComponentReusableView.html#/s:6Carbon33UICollectionComponentReusableViewC09didRenderC0yyAA03AnyC0VF":{"name":"didRenderComponent(_:)","abstract":"

    Called after the component is rendered in the content.

    ","parent_name":"UICollectionComponentReusableView"},"Classes/UICollectionViewComponentCell.html#/s:6Carbon29UICollectionViewComponentCellC15renderedContentypSgvp":{"name":"renderedContent","abstract":"

    A content that rendered on the cell.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/s:6Carbon29UICollectionViewComponentCellC08renderedD0AA03AnyD0VSgvp":{"name":"renderedComponent","abstract":"

    A component that latest rendered in the content.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/c:@M@Carbon@objc(cs)UICollectionViewComponentCell(py)highlighted":{"name":"isHighlighted","abstract":"

    A Bool value indicating whether cell is highlighted.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/c:@M@Carbon@objc(cs)UICollectionViewComponentCell(py)selected":{"name":"isSelected","abstract":"

    A Bool value indicating whether cell is selected.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/c:@M@Carbon@objc(cs)UICollectionViewComponentCell(im)initWithFrame:":{"name":"init(frame:)","abstract":"

    Create a new cell with the frame.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/c:@M@Carbon@objc(cs)UICollectionViewComponentCell(im)prepareForReuse":{"name":"prepareForReuse()","abstract":"

    Called just before the cell is dequeued.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/s:6Carbon29UICollectionViewComponentCellC16didRenderContentyyypF":{"name":"didRenderContent(_:)","abstract":"

    Called after the content is rendered on self.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/s:6Carbon29UICollectionViewComponentCellC09didRenderD0yyAA03AnyD0VF":{"name":"didRenderComponent(_:)","abstract":"

    Called after the component is rendered in the content.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UITableViewComponentHeaderFooterView.html#/s:6Carbon032UITableViewComponentHeaderFooterC0C15renderedContentypSgvp":{"name":"renderedContent","abstract":"

    A content that rendered on the cell.

    ","parent_name":"UITableViewComponentHeaderFooterView"},"Classes/UITableViewComponentHeaderFooterView.html#/s:6Carbon032UITableViewComponentHeaderFooterC0C08renderedD0AA03AnyD0VSgvp":{"name":"renderedComponent","abstract":"

    A component that latest rendered in the content.

    ","parent_name":"UITableViewComponentHeaderFooterView"},"Classes/UITableViewComponentHeaderFooterView.html#/c:@M@Carbon@objc(cs)UITableViewComponentHeaderFooterView(im)initWithReuseIdentifier:":{"name":"init(reuseIdentifier:)","abstract":"

    Create a new view with identifier for reuse.

    ","parent_name":"UITableViewComponentHeaderFooterView"},"Classes/UITableViewComponentHeaderFooterView.html#/c:@M@Carbon@objc(cs)UITableViewComponentHeaderFooterView(im)prepareForReuse":{"name":"prepareForReuse()","abstract":"

    Called just before the cell is dequeued.

    ","parent_name":"UITableViewComponentHeaderFooterView"},"Classes/UITableViewComponentHeaderFooterView.html#/s:6Carbon032UITableViewComponentHeaderFooterC0C16didRenderContentyyypF":{"name":"didRenderContent(_:)","abstract":"

    Called after the content is rendered on self.

    ","parent_name":"UITableViewComponentHeaderFooterView"},"Classes/UITableViewComponentHeaderFooterView.html#/s:6Carbon032UITableViewComponentHeaderFooterC0C09didRenderD0yyAA03AnyD0VF":{"name":"didRenderComponent(_:)","abstract":"

    Called after the component is rendered in the content.

    ","parent_name":"UITableViewComponentHeaderFooterView"},"Classes/UITableViewComponentCell.html#/s:6Carbon24UITableViewComponentCellC15renderedContentypSgvp":{"name":"renderedContent","abstract":"

    A content that rendered on the cell.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/s:6Carbon24UITableViewComponentCellC08renderedD0AA03AnyD0VSgvp":{"name":"renderedComponent","abstract":"

    A component that latest rendered in the content.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/c:@M@Carbon@objc(cs)UITableViewComponentCell(im)initWithStyle:reuseIdentifier:":{"name":"init(style:reuseIdentifier:)","abstract":"

    Create a new cell with style and identifier for reuse.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/c:@M@Carbon@objc(cs)UITableViewComponentCell(im)prepareForReuse":{"name":"prepareForReuse()","abstract":"

    Called just before the cell is dequeued.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/c:@M@Carbon@objc(cs)UITableViewComponentCell(im)setHighlighted:animated:":{"name":"setHighlighted(_:animated:)","abstract":"

    Called when the cell is highlighted.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/c:@M@Carbon@objc(cs)UITableViewComponentCell(im)setSelected:animated:":{"name":"setSelected(_:animated:)","abstract":"

    Called when the cell is selected.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/c:@M@Carbon@objc(cs)UITableViewComponentCell(im)setEditing:animated:":{"name":"setEditing(_:animated:)","abstract":"

    Called when the cell become editing.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/s:6Carbon24UITableViewComponentCellC16didRenderContentyyypF":{"name":"didRenderContent(_:)","abstract":"

    Called after the content is rendered on self.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/s:6Carbon24UITableViewComponentCellC09didRenderD0yyAA03AnyD0VF":{"name":"didRenderComponent(_:)","abstract":"

    Called after the component is rendered in the content.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html":{"name":"UITableViewComponentCell","abstract":"

    The cell as the container that renders the component.

    "},"Classes/UITableViewComponentHeaderFooterView.html":{"name":"UITableViewComponentHeaderFooterView","abstract":"

    The header or footer view as the container that renders the component.

    "},"Classes/UICollectionViewComponentCell.html":{"name":"UICollectionViewComponentCell","abstract":"

    The cell as the container that renders the component.

    "},"Classes/UICollectionComponentReusableView.html":{"name":"UICollectionComponentReusableView","abstract":"

    The header or footer view as the container that renders the component.

    "},"Classes/UICollectionViewReloadDataUpdater.html#/s:6Carbon33UICollectionViewReloadDataUpdaterCACyxGycfc":{"name":"init()","abstract":"

    Create a new updater.

    ","parent_name":"UICollectionViewReloadDataUpdater"},"Classes/UICollectionViewReloadDataUpdater.html#/s:6Carbon33UICollectionViewReloadDataUpdaterC7prepare6target7adapterySo0bC0C_xtF":{"name":"prepare(target:adapter:)","abstract":"

    Set the delegate and dataSource of given collection view, then reload data and invalidate layout.

    ","parent_name":"UICollectionViewReloadDataUpdater"},"Classes/UICollectionViewReloadDataUpdater.html#/s:6Carbon33UICollectionViewReloadDataUpdaterC14performUpdates6target7adapter4data10completionySo0bC0C_xSayAA7SectionVGyycSgtF":{"name":"performUpdates(target:adapter:data:completion:)","abstract":"

    Perform reload data to render given data to the target.","parent_name":"UICollectionViewReloadDataUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC18isAnimationEnabledSbvp":{"name":"isAnimationEnabled","abstract":"

    A Bool value indicating whether that enable diffing animations. Default is true.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC20skipReloadComponentsSbvp":{"name":"skipReloadComponents","abstract":"

    A Bool value indicating whether that skips reload components. Default is false.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC29alwaysRenderVisibleComponentsSbvp":{"name":"alwaysRenderVisibleComponents","abstract":"

    A Bool value indicating whether that to always render visible components","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC21animatableChangeCountSivp":{"name":"animatableChangeCount","abstract":"

    Max number of changes that can be animated for diffing updates. Default is 300.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterCACyxGycfc":{"name":"init()","abstract":"

    Create a new updater.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC7prepare6target7adapterySo0bC0C_xtF":{"name":"prepare(target:adapter:)","abstract":"

    Set the delegate and dataSource of given collection view, then reload data and invalidate layout.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC14performUpdates6target7adapter4data10completionySo0bC0C_xSayAA7SectionVGyycSgtF":{"name":"performUpdates(target:adapter:data:completion:)","abstract":"

    Calculates a set of changes to perform diffing updates.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC26performDifferentialUpdates6target7adapter4data15stagedChangeset10completionySo0bC0C_xSayAA7SectionVG13DifferenceKit06StagedL0VyANGyycSgtF":{"name":"performDifferentialUpdates(target:adapter:data:stagedChangeset:completion:)","abstract":"

    Perform diffing updates to render given data to the target.","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC23renderVisibleComponents2in7adapterySo0bC0C_xtF":{"name":"renderVisibleComponents(in:adapter:)","abstract":"

    Renders components displayed in visible area again.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UITableViewReloadDataUpdater.html#/s:6Carbon28UITableViewReloadDataUpdaterCACyxGycfc":{"name":"init()","abstract":"

    Create a new updater.

    ","parent_name":"UITableViewReloadDataUpdater"},"Classes/UITableViewReloadDataUpdater.html#/s:6Carbon28UITableViewReloadDataUpdaterC7prepare6target7adapterySo0bC0C_xtF":{"name":"prepare(target:adapter:)","abstract":"

    Set the delegate and dataSource of given table view, then reload data.

    ","parent_name":"UITableViewReloadDataUpdater"},"Classes/UITableViewReloadDataUpdater.html#/s:6Carbon28UITableViewReloadDataUpdaterC14performUpdates6target7adapter4data10completionySo0bC0C_xSayAA7SectionVGyycSgtF":{"name":"performUpdates(target:adapter:data:completion:)","abstract":"

    Perform reload data to render given data to the target.","parent_name":"UITableViewReloadDataUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC23deleteSectionsAnimationSo0bc3RowG0Vvp":{"name":"deleteSectionsAnimation","abstract":"

    An animation for section deletions. Default is fade.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC23insertSectionsAnimationSo0bc3RowG0Vvp":{"name":"insertSectionsAnimation","abstract":"

    An animation for section insertions. Default is fade.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC23reloadSectionsAnimationSo0bc3RowG0Vvp":{"name":"reloadSectionsAnimation","abstract":"

    An animation for section reloads. Default is fade.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC19deleteRowsAnimationSo0bc3RowG0Vvp":{"name":"deleteRowsAnimation","abstract":"

    An animation for row deletions. Default is fade.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC19insertRowsAnimationSo0bc3RowG0Vvp":{"name":"insertRowsAnimation","abstract":"

    An animation for row insertions. Default is fade.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC19reloadRowsAnimationSo0bc3RowG0Vvp":{"name":"reloadRowsAnimation","abstract":"

    An animation for row reloads. Default is fade.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC18isAnimationEnabledSbvp":{"name":"isAnimationEnabled","abstract":"

    A Bool value indicating whether that enable diffing animations. Default is true.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC20skipReloadComponentsSbvp":{"name":"skipReloadComponents","abstract":"

    A Bool value indicating whether that skips reload components. Default is false.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC29alwaysRenderVisibleComponentsSbvp":{"name":"alwaysRenderVisibleComponents","abstract":"

    A Bool value indicating whether that to always render visible components","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC21animatableChangeCountSivp":{"name":"animatableChangeCount","abstract":"

    Max number of changes that can be animated for diffing updates. Default is 300.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterCACyxGycfc":{"name":"init()","abstract":"

    Create a new updater.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC3set12allAnimationySo0bc3RowG0V_tF":{"name":"set(allAnimation:)","abstract":"

    Set given animation to all kind of diffing updates.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC7prepare6target7adapterySo0bC0C_xtF":{"name":"prepare(target:adapter:)","abstract":"

    Set the delegate and dataSource of given table view, then reload data.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC14performUpdates6target7adapter4data10completionySo0bC0C_xSayAA7SectionVGyycSgtF":{"name":"performUpdates(target:adapter:data:completion:)","abstract":"

    Calculates a set of changes to perform diffing updates.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC26performDifferentialUpdates6target7adapter4data15stagedChangeset10completionySo0bC0C_xSayAA7SectionVG13DifferenceKit06StagedL0VyANGyycSgtF":{"name":"performDifferentialUpdates(target:adapter:data:stagedChangeset:completion:)","abstract":"

    Perform diffing updates to render given data to the target.","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC23renderVisibleComponents2in7adapterySo0bC0C_xtF":{"name":"renderVisibleComponents(in:adapter:)","abstract":"

    Renders components displayed in visible area again.

    ","parent_name":"UITableViewUpdater"},"Protocols/Updater.html#/s:6Carbon7UpdaterP6TargetQa":{"name":"Target","abstract":"

    A type that represents a target to be updated for render given data.

    ","parent_name":"Updater"},"Protocols/Updater.html#/s:6Carbon7UpdaterP7AdapterQa":{"name":"Adapter","abstract":"

    A type that represents an adapter holding the data to be rendered.

    ","parent_name":"Updater"},"Protocols/Updater.html#/s:6Carbon7UpdaterP7prepare6target7adaptery6TargetQz_7AdapterQztF":{"name":"prepare(target:adapter:)","abstract":"

    Prepares given target and adapter.

    ","parent_name":"Updater"},"Protocols/Updater.html#/s:6Carbon7UpdaterP14performUpdates6target7adapter4data10completiony6TargetQz_7AdapterQzSayAA7SectionVGyycSgtF":{"name":"performUpdates(target:adapter:data:completion:)","abstract":"

    Perform updates to render given data to the target.","parent_name":"Updater"},"Protocols/Updater.html":{"name":"Updater","abstract":"

    Represents an updater that manages the updation for target.

    "},"Classes/UITableViewUpdater.html":{"name":"UITableViewUpdater","abstract":"

    An updater for managing diffing updates to render data to the UITableView.

    "},"Classes/UITableViewReloadDataUpdater.html":{"name":"UITableViewReloadDataUpdater","abstract":"

    An updater for managing to perform reload data to render data to the UITableView.

    "},"Classes/UICollectionViewUpdater.html":{"name":"UICollectionViewUpdater","abstract":"

    An updater for managing diffing updates to render data to the UICollectionView.

    "},"Classes/UICollectionViewReloadDataUpdater.html":{"name":"UICollectionViewReloadDataUpdater","abstract":"

    An updater for managing to perform reload data to render data to the UICollectionView.

    "},"Classes/UICollectionViewFlowLayoutAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewFlowLayoutAdapter(im)collectionView:layout:sizeForItemAtIndexPath:":{"name":"collectionView(_:layout:sizeForItemAt:)","abstract":"

    Returns the size for item at specified index path.

    ","parent_name":"UICollectionViewFlowLayoutAdapter"},"Classes/UICollectionViewFlowLayoutAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewFlowLayoutAdapter(im)collectionView:layout:referenceSizeForHeaderInSection:":{"name":"collectionView(_:layout:referenceSizeForHeaderInSection:)","abstract":"

    Returns the size for header in specified section.

    ","parent_name":"UICollectionViewFlowLayoutAdapter"},"Classes/UICollectionViewFlowLayoutAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewFlowLayoutAdapter(im)collectionView:layout:referenceSizeForFooterInSection:":{"name":"collectionView(_:layout:referenceSizeForFooterInSection:)","abstract":"

    Returns the size for footer in specified section.

    ","parent_name":"UICollectionViewFlowLayoutAdapter"},"Classes/UICollectionViewAdapter/SelectionContext.html#/s:6Carbon23UICollectionViewAdapterC16SelectionContextV010collectionC0So0bC0Cvp":{"name":"collectionView","abstract":"

    A collection view of the selected cell.

    ","parent_name":"SelectionContext"},"Classes/UICollectionViewAdapter/SelectionContext.html#/s:6Carbon23UICollectionViewAdapterC16SelectionContextV4nodeAA8CellNodeVvp":{"name":"node","abstract":"

    A node corresponding to the selected cell position.

    ","parent_name":"SelectionContext"},"Classes/UICollectionViewAdapter/SelectionContext.html#/s:6Carbon23UICollectionViewAdapterC16SelectionContextV9indexPath10Foundation05IndexH0Vvp":{"name":"indexPath","abstract":"

    The index path of the selected cell.

    ","parent_name":"SelectionContext"},"Classes/UICollectionViewAdapter/Config.html#/s:6Carbon23UICollectionViewAdapterC6ConfigV7defaultAEvpZ":{"name":"default","abstract":"

    The default configuration.

    ","parent_name":"Config"},"Classes/UICollectionViewAdapter/Config.html#/s:6Carbon23UICollectionViewAdapterC6ConfigV9cellClassAA0bC13ComponentCellCmvp":{"name":"cellClass","abstract":"

    The class of the cell.

    ","parent_name":"Config"},"Classes/UICollectionViewAdapter/Config.html#/s:6Carbon23UICollectionViewAdapterC6ConfigV06headerC5ClassAA0b17ComponentReusableC0Cmvp":{"name":"headerViewClass","abstract":"

    The class of the header view.

    ","parent_name":"Config"},"Classes/UICollectionViewAdapter/Config.html#/s:6Carbon23UICollectionViewAdapterC6ConfigV06footerC5ClassAA0b17ComponentReusableC0Cmvp":{"name":"footerViewClass","abstract":"

    The class of the footer view.

    ","parent_name":"Config"},"Classes/UICollectionViewAdapter/Config.html#/s:6Carbon23UICollectionViewAdapterC6ConfigV9cellClass06headercG006footercG0AeA0bC13ComponentCellCm_AA0bj8ReusableC0CmALmtcfc":{"name":"init(cellClass:headerViewClass:footerViewClass:)","abstract":"

    Create a render configuration with the classes of elements.

    ","parent_name":"Config"},"Classes/UICollectionViewAdapter.html#/s:6Carbon23UICollectionViewAdapterC4dataSayAA7SectionVGvp":{"name":"data","abstract":"

    The data to be rendered in the list UI.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/s:6Carbon23UICollectionViewAdapterC6configAC6ConfigVvp":{"name":"config","abstract":"

    A configuration that determines the classes of the elements to render.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/s:6Carbon23UICollectionViewAdapterC9didSelectyAC16SelectionContextVcSgvp":{"name":"didSelect","abstract":"

    A closure that to handle selection events of cell.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/s:6Carbon23UICollectionViewAdapterC4data6configACSayAA7SectionVG_AC6ConfigVtcfc":{"name":"init(data:config:)","abstract":"

    Create an adapter with initial data and rendering config.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter/Config.html":{"name":"Config","abstract":"

    The configuration for the classes of elements in UICollectionView.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter/SelectionContext.html":{"name":"SelectionContext","abstract":"

    Context when cell is selected.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)numberOfSectionsInCollectionView:":{"name":"numberOfSections(in:)","abstract":"

    Return the number of sections.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:numberOfItemsInSection:":{"name":"collectionView(_:numberOfItemsInSection:)","abstract":"

    Return the number of items in specified section.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:cellForItemAtIndexPath:":{"name":"collectionView(_:cellForItemAt:)","abstract":"

    Resister and dequeue the cell at specified index path.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:viewForSupplementaryElementOfKind:atIndexPath:":{"name":"collectionView(_:viewForSupplementaryElementOfKind:at:)","abstract":"

    Resister and dequeue the header or footer in specified section.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:didSelectItemAtIndexPath:":{"name":"collectionView(_:didSelectItemAt:)","abstract":"

    Callback the selected event of cell to the didSelect closure.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:willDisplayCell:forItemAtIndexPath:":{"name":"collectionView(_:willDisplay:forItemAt:)","abstract":"

    The event that the cell will display in the visible rect.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:didEndDisplayingCell:forItemAtIndexPath:":{"name":"collectionView(_:didEndDisplaying:forItemAt:)","abstract":"

    The event that the cell did left from the visible rect.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:willDisplaySupplementaryView:forElementKind:atIndexPath:":{"name":"collectionView(_:willDisplaySupplementaryView:forElementKind:at:)","abstract":"

    The event that the header or footer will display in the visible rect.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:didEndDisplayingSupplementaryView:forElementOfKind:atIndexPath:":{"name":"collectionView(_:didEndDisplayingSupplementaryView:forElementOfKind:at:)","abstract":"

    The event that the header or footer did left from the visible rect.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UITableViewAdapter/SelectionContext.html#/s:6Carbon18UITableViewAdapterC16SelectionContextV05tableC0So0bC0Cvp":{"name":"tableView","abstract":"

    A table view of the selected cell.

    ","parent_name":"SelectionContext"},"Classes/UITableViewAdapter/SelectionContext.html#/s:6Carbon18UITableViewAdapterC16SelectionContextV4nodeAA8CellNodeVvp":{"name":"node","abstract":"

    A node corresponding to the selected cell position.

    ","parent_name":"SelectionContext"},"Classes/UITableViewAdapter/SelectionContext.html#/s:6Carbon18UITableViewAdapterC16SelectionContextV9indexPath10Foundation05IndexH0Vvp":{"name":"indexPath","abstract":"

    The index path of the selected cell.

    ","parent_name":"SelectionContext"},"Classes/UITableViewAdapter/Config.html#/s:6Carbon18UITableViewAdapterC6ConfigV7defaultAEvpZ":{"name":"default","abstract":"

    The default configuration.

    ","parent_name":"Config"},"Classes/UITableViewAdapter/Config.html#/s:6Carbon18UITableViewAdapterC6ConfigV9cellClassAA0bC13ComponentCellCmvp":{"name":"cellClass","abstract":"

    The class of the cell.

    ","parent_name":"Config"},"Classes/UITableViewAdapter/Config.html#/s:6Carbon18UITableViewAdapterC6ConfigV06headerC5ClassAA0bc21ComponentHeaderFooterC0Cmvp":{"name":"headerViewClass","abstract":"

    The class of the header view.

    ","parent_name":"Config"},"Classes/UITableViewAdapter/Config.html#/s:6Carbon18UITableViewAdapterC6ConfigV06footerC5ClassAA0bc21ComponentHeaderFooterC0Cmvp":{"name":"footerViewClass","abstract":"

    The class of the footer view.

    ","parent_name":"Config"},"Classes/UITableViewAdapter/Config.html#/s:6Carbon18UITableViewAdapterC6ConfigV9cellClass06headercG006footercG0AeA0bC13ComponentCellCm_AA0bcj12HeaderFooterC0CmALmtcfc":{"name":"init(cellClass:headerViewClass:footerViewClass:)","abstract":"

    Create a render configuration with the classes of elements.

    ","parent_name":"Config"},"Classes/UITableViewAdapter.html#/s:6Carbon18UITableViewAdapterC4dataSayAA7SectionVGvp":{"name":"data","abstract":"

    The data to be rendered in the list UI.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/s:6Carbon18UITableViewAdapterC6configAC6ConfigVvp":{"name":"config","abstract":"

    A configuration that determines the classes of the elements to render.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/s:6Carbon18UITableViewAdapterC9didSelectyAC16SelectionContextVcSgvp":{"name":"didSelect","abstract":"

    A closure that to handle selection events of cell.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/s:6Carbon18UITableViewAdapterC4data6configACSayAA7SectionVG_AC6ConfigVtcfc":{"name":"init(data:config:)","abstract":"

    Create an adapter with initial data and rendering config.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter/Config.html":{"name":"Config","abstract":"

    The configuration for the classes of elements in UITableView.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter/SelectionContext.html":{"name":"SelectionContext","abstract":"

    Context when cell is selected.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)numberOfSectionsInTableView:":{"name":"numberOfSections(in:)","abstract":"

    Return the number of sections.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:numberOfRowsInSection:":{"name":"tableView(_:numberOfRowsInSection:)","abstract":"

    Return the number of rows in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:cellForRowAtIndexPath:":{"name":"tableView(_:cellForRowAt:)","abstract":"

    Resister and dequeue the cell at specified index path.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:viewForHeaderInSection:":{"name":"tableView(_:viewForHeaderInSection:)","abstract":"

    Resister and dequeue the header in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:viewForFooterInSection:":{"name":"tableView(_:viewForFooterInSection:)","abstract":"

    Resister and dequeue the footer in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:heightForRowAtIndexPath:":{"name":"tableView(_:heightForRowAt:)","abstract":"

    Returns the height for row at specified index path.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:estimatedHeightForRowAtIndexPath:":{"name":"tableView(_:estimatedHeightForRowAt:)","abstract":"

    Returns the estimated height for row at specified index path.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:heightForHeaderInSection:":{"name":"tableView(_:heightForHeaderInSection:)","abstract":"

    Returns the height for header in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:estimatedHeightForHeaderInSection:":{"name":"tableView(_:estimatedHeightForHeaderInSection:)","abstract":"

    Returns the estimated height for header in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:heightForFooterInSection:":{"name":"tableView(_:heightForFooterInSection:)","abstract":"

    Returns the height for footer in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:estimatedHeightForFooterInSection:":{"name":"tableView(_:estimatedHeightForFooterInSection:)","abstract":"

    Returns the estimated height for footer in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:didSelectRowAtIndexPath:":{"name":"tableView(_:didSelectRowAt:)","abstract":"

    Callback the selected event of cell to the didSelect closure.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:willDisplayCell:forRowAtIndexPath:":{"name":"tableView(_:willDisplay:forRowAt:)","abstract":"

    The event that the cell will display in the visible rect.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:didEndDisplayingCell:forRowAtIndexPath:":{"name":"tableView(_:didEndDisplaying:forRowAt:)","abstract":"

    The event that the cell did left from the visible rect.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:willDisplayHeaderView:forSection:":{"name":"tableView(_:willDisplayHeaderView:forSection:)","abstract":"

    The event that the header will display in the visible rect.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:didEndDisplayingHeaderView:forSection:":{"name":"tableView(_:didEndDisplayingHeaderView:forSection:)","abstract":"

    The event that the header did left from the visible rect.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:willDisplayFooterView:forSection:":{"name":"tableView(_:willDisplayFooterView:forSection:)","abstract":"

    The event that the footer will display in the visible rect.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:didEndDisplayingFooterView:forSection:":{"name":"tableView(_:didEndDisplayingFooterView:forSection:)","abstract":"

    The event that the footer did left from the visible rect.

    ","parent_name":"UITableViewAdapter"},"Protocols/Adapter.html#/s:6Carbon7AdapterP4dataSayAA7SectionVGvp":{"name":"data","abstract":"

    The data to be rendered.

    ","parent_name":"Adapter"},"Protocols/Adapter.html#/s:6Carbon7AdapterPAAE9cellNodes2inSayAA8CellNodeVGSi_tF":{"name":"cellNodes(in:)","abstract":"

    Returns a collection of cell nodes in the specified section.

    ","parent_name":"Adapter"},"Protocols/Adapter.html#/s:6Carbon7AdapterPAAE8cellNode2atAA04CellD0V10Foundation9IndexPathV_tF":{"name":"cellNode(at:)","abstract":"

    Returns a node of cell at the specified index path.

    ","parent_name":"Adapter"},"Protocols/Adapter.html#/s:6Carbon7AdapterPAAE10headerNode2inAA04ViewD0VSgSi_tF":{"name":"headerNode(in:)","abstract":"

    Returns a node of header in the specified section.

    ","parent_name":"Adapter"},"Protocols/Adapter.html#/s:6Carbon7AdapterPAAE10footerNode2inAA04ViewD0VSgSi_tF":{"name":"footerNode(in:)","abstract":"

    Returns a node of footer in the specified section.

    ","parent_name":"Adapter"},"Protocols/Adapter.html":{"name":"Adapter","abstract":"

    Represents an adapter that holds data to be rendered.

    "},"Classes/UITableViewAdapter.html":{"name":"UITableViewAdapter","abstract":"

    An adapter for UITableView."},"Classes/UICollectionViewAdapter.html":{"name":"UICollectionViewAdapter","abstract":"

    An adapter for UICollectionView."},"Classes/UICollectionViewFlowLayoutAdapter.html":{"name":"UICollectionViewFlowLayoutAdapter","abstract":"

    An adapter for UICollectionView with UICollectionViewFlowLayout inherited from UICollectionViewAdapter.

    "},"Classes/Renderer.html#/s:6Carbon8RendererC6target6TargetQzSgXwvp":{"name":"target","abstract":"

    An instance of target that weakly referenced.

    ","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC7adapter7AdapterQzvp":{"name":"adapter","abstract":"

    An instance of adapter that specified at initialized.

    ","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC7updaterxvp":{"name":"updater","abstract":"

    An instance of updater that specified at initialized.

    ","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC4dataSayAA7SectionVGvp":{"name":"data","abstract":"

    Returns a current data held in adapter.","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC6target7adapter7updaterACyxG6TargetQz_7AdapterQzxtcfc":{"name":"init(target:adapter:updater:)","abstract":"

    Create a new instance with given target, adapter and updater.","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC6render_10completionyqd___yycSgtSlRd__AA7SectionV7ElementRtd__lF":{"name":"render(_:completion:)","abstract":"

    Render given collection of sections, immediately.

    ","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC6render_10completionyqd___yycSgtSlRd__AA7SectionVSg7ElementRtd__lF":{"name":"render(_:completion:)","abstract":"

    Render given collection of sections after removes contained nil, immediately.

    ","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC6render_10completionyAA7SectionVd_yycSgtF":{"name":"render(_:completion:)","abstract":"

    Render a given variadic number of sections, immediately.

    ","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC6render_10completionyAA7SectionVSgd_yycSgtF":{"name":"render(_:completion:)","abstract":"

    Render a given variadic number of sections after removes contained nil, immediately.

    ","parent_name":"Renderer"},"Classes/Renderer.html":{"name":"Renderer","abstract":"

    Renderer is a controller to render passed data to target"},"Structs/Section.html#/s:6Carbon7SectionV2ids11AnyHashableVvp":{"name":"id","abstract":"

    A type-erased identifier that can be used to uniquely","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV6headerAA8ViewNodeVSgvp":{"name":"header","abstract":"

    A node representing header view.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV5cellsSayAA8CellNodeVGvp":{"name":"cells","abstract":"

    A collection of nodes representing cells.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV6footerAA8ViewNodeVSgvp":{"name":"footer","abstract":"

    A node representing footer view.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV2id6header5cells6footerACx_AA8ViewNodeVSgq_AJtcSHRzSlR_AA04CellH0V7ElementRt_r0_lufc":{"name":"init(id:header:cells:footer:)","abstract":"

    Create a section wrapping id, header node, footer node and cell nodes.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV2id6header5cells6footerACx_AA8ViewNodeVSgq_AJtcSHRzSlR_AA04CellH0VSg7ElementRt_r0_lufc":{"name":"init(id:header:cells:footer:)","abstract":"

    Create a section wrapping id, header node, footer node and cell nodes.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV2id6header6footerACx_AA8ViewNodeVSgAItcSHRzlufc":{"name":"init(id:header:footer:)","abstract":"

    Create a section wrapping id, header node, footer node.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV20differenceIdentifiers11AnyHashableVvp":{"name":"differenceIdentifier","abstract":"

    An identifier value for difference calculation.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV8elementsSayAA8CellNodeVGvp":{"name":"elements","abstract":"

    The collection of element in the section.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV14isContentEqual2toSbAC_tF":{"name":"isContentEqual(to:)","abstract":"

    Indicate whether the content of self is equals to the content of","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV6source8elementsA2C_xtcSlRzAA8CellNodeV7ElementRtzlufc":{"name":"init(source:elements:)","abstract":"

    Creates a new section reproducing the given source section with replacing the elements.

    ","parent_name":"Section"},"Structs/Section.html":{"name":"Section","abstract":"

    Represents a section of list UI, containing header node, footer node"},"Structs/ViewNode.html#/s:6Carbon8ViewNodeV9componentAA12AnyComponentVvp":{"name":"component","abstract":"

    A type-erased component which wrapped in self.

    ","parent_name":"ViewNode"},"Structs/ViewNode.html#/s:6Carbon8ViewNodeVyACxcAA9ComponentRzlufc":{"name":"init(_:)","abstract":"

    Create a node wrapping given component.

    ","parent_name":"ViewNode"},"Structs/ViewNode.html#/s:6Carbon8ViewNodeV9component2asxSgxm_tlF":{"name":"component(as:)","abstract":"

    Returns a base instance of component casted as given type if possible.

    ","parent_name":"ViewNode"},"Structs/ViewNode.html#/s:6Carbon8ViewNodeV14isContentEqual2toSbAC_tF":{"name":"isContentEqual(to:)","abstract":"

    Indicate whether the content of self is equals to the content of","parent_name":"ViewNode"},"Structs/ViewNode.html#/s:6Carbon8ViewNodeV16debugDescriptionSSvp":{"name":"debugDescription","abstract":"

    A textual representation of this instance, suitable for debugging.

    ","parent_name":"ViewNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV2ids11AnyHashableVvp":{"name":"id","abstract":"

    A type-erased identifier that can be used to uniquely","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV9componentAA12AnyComponentVvp":{"name":"component","abstract":"

    A type-erased component which wrapped in self.

    ","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV2id_ACx_q_tcSHRzAA9ComponentR_r0_lufc":{"name":"init(id:_:)","abstract":"

    Create a node wrapping given id and component.

    ","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeVyACxcAA21IdentifiableComponentRzlufc":{"name":"init(_:)","abstract":"

    Create a node wrapping given component and its id.

    ","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV9component2asxSgxm_tlF":{"name":"component(as:)","abstract":"

    Returns a base instance of component casted as given type if possible.

    ","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV20differenceIdentifiers11AnyHashableVvp":{"name":"differenceIdentifier","abstract":"

    An identifier value for difference calculation.

    ","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV14isContentEqual2toSbAC_tF":{"name":"isContentEqual(to:)","abstract":"

    Indicate whether the content of self is equals to the content of","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV16debugDescriptionSSvp":{"name":"debugDescription","abstract":"

    A textual representation of this instance, suitable for debugging.

    ","parent_name":"CellNode"},"Structs/CellNode.html":{"name":"CellNode","abstract":"

    The node for cell that can be uniquely identified."},"Structs/ViewNode.html":{"name":"ViewNode","abstract":"

    The node for view which need not be uniquely identified like header or footer."},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV15reuseIdentifierSSvp":{"name":"reuseIdentifier","abstract":"

    A string used to identify a element that is reusable. Default is the type name of Content.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentVyACxcAA0C0Rzlufc":{"name":"init(_:)","abstract":"

    Create a type-erased component that wraps the given instance.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV13renderContentypyF":{"name":"renderContent()","abstract":"

    Returns a new instance of Content.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV6render2inyyp_tF":{"name":"render(in:)","abstract":"

    Render properties into the content on the element of list UI.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV13referenceSize2inSo6CGSizeVSgSo6CGRectV_tF":{"name":"referenceSize(in:)","abstract":"

    Returns the referencing size of content to render on the list UI.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV19shouldContentUpdate4withSbAC_tF":{"name":"shouldContentUpdate(with:)","abstract":"

    Returns a Bool value indicating whether the content should be reloaded.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV12shouldRender4next2inSbAC_yptF":{"name":"shouldRender(next:in:)","abstract":"

    Returns a Bool value indicating whether component should be render again.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV6layout7content2inyyp_So6UIViewCtF":{"name":"layout(content:in:)","abstract":"

    Layout the content on top of element of the list UI.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV18contentWillDisplayyyypF":{"name":"contentWillDisplay(_:)","abstract":"

    Invoked every time of before a component got into visible area.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV20contentDidEndDisplayyyypF":{"name":"contentDidEndDisplay(_:)","abstract":"

    Invoked every time of after a component went out from visible area.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV2asyxSgxmlF":{"name":"as(_:)","abstract":"

    Returns a base instance casted as given type if possible.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV16debugDescriptionSSvp":{"name":"debugDescription","abstract":"

    A textual representation of this instance, suitable for debugging.

    ","parent_name":"AnyComponent"},"Protocols/IdentifiableComponent.html#/s:6Carbon21IdentifiableComponentP2IDQa":{"name":"ID","abstract":"

    A type that represents an id that used to uniquely identify the component.

    ","parent_name":"IdentifiableComponent"},"Protocols/IdentifiableComponent.html#/s:6Carbon21IdentifiableComponentP2id2IDQzvp":{"name":"id","abstract":"

    An identifier that used to uniquely identify the component.

    ","parent_name":"IdentifiableComponent"},"Protocols/Component.html#/s:6Carbon9ComponentP7ContentQa":{"name":"Content","abstract":"

    A type that represents a content to be render on the element of list UI.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP13renderContent0D0QzyF":{"name":"renderContent()","abstract":"

    Returns a new instance of Content.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP6render2iny7ContentQz_tF":{"name":"render(in:)","abstract":"

    Render properties into the content.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP13referenceSize2inSo6CGSizeVSgSo6CGRectV_tF":{"name":"referenceSize(in:)","abstract":"

    Returns the referencing size of content to render on the list UI.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP19shouldContentUpdate4withSbx_tF":{"name":"shouldContentUpdate(with:)","abstract":"

    Returns a Bool value indicating whether the content should be reloaded.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP15reuseIdentifierSSvp":{"name":"reuseIdentifier","abstract":"

    A string used to identify a element that is reusable. Default is the type name of Content.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP12shouldRender4next2inSbx_7ContentQztF":{"name":"shouldRender(next:in:)","abstract":"

    Returns a Bool value indicating whether component should be render again.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP6layout7content2iny7ContentQz_So6UIViewCtF":{"name":"layout(content:in:)","abstract":"

    Layout the content on top of element of the list UI.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP18contentWillDisplayyy7ContentQzF":{"name":"contentWillDisplay(_:)","abstract":"

    Invoked every time of before a component got into visible area.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP20contentDidEndDisplayyy7ContentQzF":{"name":"contentDidEndDisplay(_:)","abstract":"

    Invoked every time of after a component went out from visible area.

    ","parent_name":"Component"},"Protocols/Component.html":{"name":"Component","abstract":"

    Represents a component of a list UI such as UITableView or UICollectionView.

    "},"Protocols/IdentifiableComponent.html":{"name":"IdentifiableComponent","abstract":"

    Represents a component that can be uniquely identify.

    "},"Structs/AnyComponent.html":{"name":"AnyComponent","abstract":"

    A type-erased component.

    "},"Components.html":{"name":"Components"},"Nodes.html":{"name":"Nodes"},"Section.html":{"name":"Section"},"Renderer.html":{"name":"Renderer"},"Adapters.html":{"name":"Adapters"},"Updaters.html":{"name":"Updaters"},"Interfaces.html":{"name":"Interfaces"},"Content Protocols.html":{"name":"Content Protocols"},"Changesets.html":{"name":"Changesets"}} \ No newline at end of file +{"Changesets.html#/s:6Carbon13DataChangeseta":{"name":"DataChangeset","abstract":"

    A set of changes in the collection of sections.

    "},"Changesets.html#/s:6Carbon19StagedDataChangeseta":{"name":"StagedDataChangeset","abstract":"

    An ordered collection of DataChangeset as staged set of changes"},"Protocols/UICollectionReusableViewContent.html#/s:6Carbon31UICollectionReusableViewContentP9didRender2inySo0bcD0C_tF":{"name":"didRender(in:)","abstract":"

    Called after the self is rendered on specified view.

    ","parent_name":"UICollectionReusableViewContent"},"Protocols/UICollectionReusableViewContent.html#/s:6Carbon31UICollectionReusableViewContentP18didRenderComponent2inySo0bcD0C_tF":{"name":"didRenderComponent(in:)","abstract":"

    Called after the component is rendered in self on the specified view.

    ","parent_name":"UICollectionReusableViewContent"},"Protocols/UICollectionReusableViewContent.html#/s:6Carbon31UICollectionReusableViewContentP22viewDidPrepareForReuseyySo0bcD0CF":{"name":"viewDidPrepareForReuse(_:)","abstract":"

    Called just before the view is dequeued.

    ","parent_name":"UICollectionReusableViewContent"},"Protocols/UICollectionViewCellContent.html#/s:6Carbon27UICollectionViewCellContentP9didRender2inySo0bcD0C_tF":{"name":"didRender(in:)","abstract":"

    Called after the self is rendered on specified cell.

    ","parent_name":"UICollectionViewCellContent"},"Protocols/UICollectionViewCellContent.html#/s:6Carbon27UICollectionViewCellContentP18didRenderComponent2inySo0bcD0C_tF":{"name":"didRenderComponent(in:)","abstract":"

    Called after the component is rendered in self on the specified cell.

    ","parent_name":"UICollectionViewCellContent"},"Protocols/UICollectionViewCellContent.html#/s:6Carbon27UICollectionViewCellContentP22cellDidPrepareForReuseyySo0bcD0CF":{"name":"cellDidPrepareForReuse(_:)","abstract":"

    Called just before the cell is dequeued.

    ","parent_name":"UICollectionViewCellContent"},"Protocols/UICollectionViewCellContent.html#/s:6Carbon27UICollectionViewCellContentP21cellDidSetHighlighted_02isI0ySo0bcD0C_SbtF":{"name":"cellDidSetHighlighted(_:isHighlighted:)","abstract":"

    Called when the cell is highlighted.

    ","parent_name":"UICollectionViewCellContent"},"Protocols/UICollectionViewCellContent.html#/s:6Carbon27UICollectionViewCellContentP18cellDidSetSelected_02isI0ySo0bcD0C_SbtF":{"name":"cellDidSetSelected(_:isSelected:)","abstract":"

    Called when the cell is selected.

    ","parent_name":"UICollectionViewCellContent"},"Protocols/UITableViewHeaderFooterViewContent.html#/s:6Carbon023UITableViewHeaderFooterC7ContentP9didRender2inySo0bcdeC0C_tF":{"name":"didRender(in:)","abstract":"

    Called after the self is rendered on specified view.

    ","parent_name":"UITableViewHeaderFooterViewContent"},"Protocols/UITableViewHeaderFooterViewContent.html#/s:6Carbon023UITableViewHeaderFooterC7ContentP18didRenderComponent2inySo0bcdeC0C_tF":{"name":"didRenderComponent(in:)","abstract":"

    Called after the component is rendered in self on the specified view.

    ","parent_name":"UITableViewHeaderFooterViewContent"},"Protocols/UITableViewHeaderFooterViewContent.html#/s:6Carbon023UITableViewHeaderFooterC7ContentP21viwDidPrepareForReuseyySo0bcdeC0CF":{"name":"viwDidPrepareForReuse(_:)","abstract":"

    Called just before the view is dequeued.

    ","parent_name":"UITableViewHeaderFooterViewContent"},"Protocols/UITableViewCellContent.html#/s:6Carbon22UITableViewCellContentP9didRender2inySo0bcD0C_tF":{"name":"didRender(in:)","abstract":"

    Called after the self is rendered on specified cell.

    ","parent_name":"UITableViewCellContent"},"Protocols/UITableViewCellContent.html#/s:6Carbon22UITableViewCellContentP18didRenderComponent2inySo0bcD0C_tF":{"name":"didRenderComponent(in:)","abstract":"

    Called after the component is rendered in self on the specified cell.

    ","parent_name":"UITableViewCellContent"},"Protocols/UITableViewCellContent.html#/s:6Carbon22UITableViewCellContentP22cellDidPrepareForReuseyySo0bcD0CF":{"name":"cellDidPrepareForReuse(_:)","abstract":"

    Called just before the cell is dequeued.

    ","parent_name":"UITableViewCellContent"},"Protocols/UITableViewCellContent.html#/s:6Carbon22UITableViewCellContentP21cellDidSetHighlighted_02isI08animatedySo0bcD0C_S2btF":{"name":"cellDidSetHighlighted(_:isHighlighted:animated:)","abstract":"

    Called when the cell is highlighted.

    ","parent_name":"UITableViewCellContent"},"Protocols/UITableViewCellContent.html#/s:6Carbon22UITableViewCellContentP18cellDidSetSelected_02isI08animatedySo0bcD0C_S2btF":{"name":"cellDidSetSelected(_:isSelected:animated:)","abstract":"

    Called when the cell is selected.

    ","parent_name":"UITableViewCellContent"},"Protocols/UITableViewCellContent.html#/s:6Carbon22UITableViewCellContentP17cellDidSetEditing_02isI08animatedySo0bcD0C_S2btF":{"name":"cellDidSetEditing(_:isEditing:animated:)","abstract":"

    Called when the cell become editing.

    ","parent_name":"UITableViewCellContent"},"Protocols/UITableViewCellContent.html":{"name":"UITableViewCellContent","abstract":"

    Represents the content of the UITableViewCell."},"Protocols/UITableViewHeaderFooterViewContent.html":{"name":"UITableViewHeaderFooterViewContent","abstract":"

    Represents the content of the UITableViewHeaderFooterView."},"Protocols/UICollectionViewCellContent.html":{"name":"UICollectionViewCellContent","abstract":"

    Represents the content of the UICollectionViewCell."},"Protocols/UICollectionReusableViewContent.html":{"name":"UICollectionReusableViewContent","abstract":"

    Represents the content of the UICollectionReusableView."},"Classes/UICollectionComponentReusableView.html#/s:6Carbon33UICollectionComponentReusableViewC15renderedContentypSgvp":{"name":"renderedContent","abstract":"

    A content that rendered on the cell.

    ","parent_name":"UICollectionComponentReusableView"},"Classes/UICollectionComponentReusableView.html#/s:6Carbon33UICollectionComponentReusableViewC08renderedC0AA03AnyC0VSgvp":{"name":"renderedComponent","abstract":"

    A component that latest rendered in the content.

    ","parent_name":"UICollectionComponentReusableView"},"Classes/UICollectionComponentReusableView.html#/c:@M@Carbon@objc(cs)UICollectionComponentReusableView(im)initWithFrame:":{"name":"init(frame:)","abstract":"

    Create a new view with identifier for reuse.

    ","parent_name":"UICollectionComponentReusableView"},"Classes/UICollectionComponentReusableView.html#/c:@M@Carbon@objc(cs)UICollectionComponentReusableView(im)prepareForReuse":{"name":"prepareForReuse()","abstract":"

    Called just before the cell is dequeued.

    ","parent_name":"UICollectionComponentReusableView"},"Classes/UICollectionComponentReusableView.html#/s:6Carbon33UICollectionComponentReusableViewC16didRenderContentyyypF":{"name":"didRenderContent(_:)","abstract":"

    Called after the content is rendered on self.

    ","parent_name":"UICollectionComponentReusableView"},"Classes/UICollectionComponentReusableView.html#/s:6Carbon33UICollectionComponentReusableViewC09didRenderC0yyAA03AnyC0VF":{"name":"didRenderComponent(_:)","abstract":"

    Called after the component is rendered in the content.

    ","parent_name":"UICollectionComponentReusableView"},"Classes/UICollectionViewComponentCell.html#/s:6Carbon29UICollectionViewComponentCellC15renderedContentypSgvp":{"name":"renderedContent","abstract":"

    A content that rendered on the cell.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/s:6Carbon29UICollectionViewComponentCellC08renderedD0AA03AnyD0VSgvp":{"name":"renderedComponent","abstract":"

    A component that latest rendered in the content.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/c:@M@Carbon@objc(cs)UICollectionViewComponentCell(py)highlighted":{"name":"isHighlighted","abstract":"

    A Bool value indicating whether cell is highlighted.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/c:@M@Carbon@objc(cs)UICollectionViewComponentCell(py)selected":{"name":"isSelected","abstract":"

    A Bool value indicating whether cell is selected.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/c:@M@Carbon@objc(cs)UICollectionViewComponentCell(im)initWithFrame:":{"name":"init(frame:)","abstract":"

    Create a new cell with the frame.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/c:@M@Carbon@objc(cs)UICollectionViewComponentCell(im)prepareForReuse":{"name":"prepareForReuse()","abstract":"

    Called just before the cell is dequeued.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/s:6Carbon29UICollectionViewComponentCellC16didRenderContentyyypF":{"name":"didRenderContent(_:)","abstract":"

    Called after the content is rendered on self.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UICollectionViewComponentCell.html#/s:6Carbon29UICollectionViewComponentCellC09didRenderD0yyAA03AnyD0VF":{"name":"didRenderComponent(_:)","abstract":"

    Called after the component is rendered in the content.

    ","parent_name":"UICollectionViewComponentCell"},"Classes/UITableViewComponentHeaderFooterView.html#/s:6Carbon032UITableViewComponentHeaderFooterC0C15renderedContentypSgvp":{"name":"renderedContent","abstract":"

    A content that rendered on the cell.

    ","parent_name":"UITableViewComponentHeaderFooterView"},"Classes/UITableViewComponentHeaderFooterView.html#/s:6Carbon032UITableViewComponentHeaderFooterC0C08renderedD0AA03AnyD0VSgvp":{"name":"renderedComponent","abstract":"

    A component that latest rendered in the content.

    ","parent_name":"UITableViewComponentHeaderFooterView"},"Classes/UITableViewComponentHeaderFooterView.html#/c:@M@Carbon@objc(cs)UITableViewComponentHeaderFooterView(im)initWithReuseIdentifier:":{"name":"init(reuseIdentifier:)","abstract":"

    Create a new view with identifier for reuse.

    ","parent_name":"UITableViewComponentHeaderFooterView"},"Classes/UITableViewComponentHeaderFooterView.html#/c:@M@Carbon@objc(cs)UITableViewComponentHeaderFooterView(im)prepareForReuse":{"name":"prepareForReuse()","abstract":"

    Called just before the cell is dequeued.

    ","parent_name":"UITableViewComponentHeaderFooterView"},"Classes/UITableViewComponentHeaderFooterView.html#/s:6Carbon032UITableViewComponentHeaderFooterC0C16didRenderContentyyypF":{"name":"didRenderContent(_:)","abstract":"

    Called after the content is rendered on self.

    ","parent_name":"UITableViewComponentHeaderFooterView"},"Classes/UITableViewComponentHeaderFooterView.html#/s:6Carbon032UITableViewComponentHeaderFooterC0C09didRenderD0yyAA03AnyD0VF":{"name":"didRenderComponent(_:)","abstract":"

    Called after the component is rendered in the content.

    ","parent_name":"UITableViewComponentHeaderFooterView"},"Classes/UITableViewComponentCell.html#/s:6Carbon24UITableViewComponentCellC15renderedContentypSgvp":{"name":"renderedContent","abstract":"

    A content that rendered on the cell.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/s:6Carbon24UITableViewComponentCellC08renderedD0AA03AnyD0VSgvp":{"name":"renderedComponent","abstract":"

    A component that latest rendered in the content.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/c:@M@Carbon@objc(cs)UITableViewComponentCell(im)initWithStyle:reuseIdentifier:":{"name":"init(style:reuseIdentifier:)","abstract":"

    Create a new cell with style and identifier for reuse.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/c:@M@Carbon@objc(cs)UITableViewComponentCell(im)prepareForReuse":{"name":"prepareForReuse()","abstract":"

    Called just before the cell is dequeued.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/c:@M@Carbon@objc(cs)UITableViewComponentCell(im)setHighlighted:animated:":{"name":"setHighlighted(_:animated:)","abstract":"

    Called when the cell is highlighted.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/c:@M@Carbon@objc(cs)UITableViewComponentCell(im)setSelected:animated:":{"name":"setSelected(_:animated:)","abstract":"

    Called when the cell is selected.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/c:@M@Carbon@objc(cs)UITableViewComponentCell(im)setEditing:animated:":{"name":"setEditing(_:animated:)","abstract":"

    Called when the cell become editing.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/s:6Carbon24UITableViewComponentCellC16didRenderContentyyypF":{"name":"didRenderContent(_:)","abstract":"

    Called after the content is rendered on self.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html#/s:6Carbon24UITableViewComponentCellC09didRenderD0yyAA03AnyD0VF":{"name":"didRenderComponent(_:)","abstract":"

    Called after the component is rendered in the content.

    ","parent_name":"UITableViewComponentCell"},"Classes/UITableViewComponentCell.html":{"name":"UITableViewComponentCell","abstract":"

    The cell as the container that renders the component.

    "},"Classes/UITableViewComponentHeaderFooterView.html":{"name":"UITableViewComponentHeaderFooterView","abstract":"

    The header or footer view as the container that renders the component.

    "},"Classes/UICollectionViewComponentCell.html":{"name":"UICollectionViewComponentCell","abstract":"

    The cell as the container that renders the component.

    "},"Classes/UICollectionComponentReusableView.html":{"name":"UICollectionComponentReusableView","abstract":"

    The header or footer view as the container that renders the component.

    "},"Classes/UICollectionViewReloadDataUpdater.html#/s:6Carbon33UICollectionViewReloadDataUpdaterCACyxGycfc":{"name":"init()","abstract":"

    Create a new updater.

    ","parent_name":"UICollectionViewReloadDataUpdater"},"Classes/UICollectionViewReloadDataUpdater.html#/s:6Carbon33UICollectionViewReloadDataUpdaterC7prepare6target7adapterySo0bC0C_xtF":{"name":"prepare(target:adapter:)","abstract":"

    Set the delegate and dataSource of given collection view, then reload data and invalidate layout.

    ","parent_name":"UICollectionViewReloadDataUpdater"},"Classes/UICollectionViewReloadDataUpdater.html#/s:6Carbon33UICollectionViewReloadDataUpdaterC14performUpdates6target7adapter4data10completionySo0bC0C_xSayAA7SectionVGyycSgtF":{"name":"performUpdates(target:adapter:data:completion:)","abstract":"

    Perform reload data to render given data to the target.","parent_name":"UICollectionViewReloadDataUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC18isAnimationEnabledSbvp":{"name":"isAnimationEnabled","abstract":"

    A Bool value indicating whether that enable diffing animations. Default is true.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC20skipReloadComponentsSbvp":{"name":"skipReloadComponents","abstract":"

    A Bool value indicating whether that skips reload components. Default is false.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC29alwaysRenderVisibleComponentsSbvp":{"name":"alwaysRenderVisibleComponents","abstract":"

    A Bool value indicating whether that to always render visible components","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC18keepsContentOffsetSbvp":{"name":"keepsContentOffset","abstract":"

    A Bool value indicating whether that to reset content offset after","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC21animatableChangeCountSivp":{"name":"animatableChangeCount","abstract":"

    Max number of changes that can be animated for diffing updates. Default is 300.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterCACyxGycfc":{"name":"init()","abstract":"

    Create a new updater.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC7prepare6target7adapterySo0bC0C_xtF":{"name":"prepare(target:adapter:)","abstract":"

    Set the delegate and dataSource of given collection view, then reload data and invalidate layout.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC14performUpdates6target7adapter4data10completionySo0bC0C_xSayAA7SectionVGyycSgtF":{"name":"performUpdates(target:adapter:data:completion:)","abstract":"

    Calculates a set of changes to perform diffing updates.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC26performDifferentialUpdates6target7adapter4data15stagedChangeset10completionySo0bC0C_xSayAA7SectionVG13DifferenceKit06StagedL0VyANGyycSgtF":{"name":"performDifferentialUpdates(target:adapter:data:stagedChangeset:completion:)","abstract":"

    Perform diffing updates to render given data to the target.","parent_name":"UICollectionViewUpdater"},"Classes/UICollectionViewUpdater.html#/s:6Carbon23UICollectionViewUpdaterC23renderVisibleComponents2in7adapterySo0bC0C_xtF":{"name":"renderVisibleComponents(in:adapter:)","abstract":"

    Renders components displayed in visible area again.

    ","parent_name":"UICollectionViewUpdater"},"Classes/UITableViewReloadDataUpdater.html#/s:6Carbon28UITableViewReloadDataUpdaterCACyxGycfc":{"name":"init()","abstract":"

    Create a new updater.

    ","parent_name":"UITableViewReloadDataUpdater"},"Classes/UITableViewReloadDataUpdater.html#/s:6Carbon28UITableViewReloadDataUpdaterC7prepare6target7adapterySo0bC0C_xtF":{"name":"prepare(target:adapter:)","abstract":"

    Set the delegate and dataSource of given table view, then reload data.

    ","parent_name":"UITableViewReloadDataUpdater"},"Classes/UITableViewReloadDataUpdater.html#/s:6Carbon28UITableViewReloadDataUpdaterC14performUpdates6target7adapter4data10completionySo0bC0C_xSayAA7SectionVGyycSgtF":{"name":"performUpdates(target:adapter:data:completion:)","abstract":"

    Perform reload data to render given data to the target.","parent_name":"UITableViewReloadDataUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC23deleteSectionsAnimationSo0bc3RowG0Vvp":{"name":"deleteSectionsAnimation","abstract":"

    An animation for section deletions. Default is fade.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC23insertSectionsAnimationSo0bc3RowG0Vvp":{"name":"insertSectionsAnimation","abstract":"

    An animation for section insertions. Default is fade.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC23reloadSectionsAnimationSo0bc3RowG0Vvp":{"name":"reloadSectionsAnimation","abstract":"

    An animation for section reloads. Default is fade.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC19deleteRowsAnimationSo0bc3RowG0Vvp":{"name":"deleteRowsAnimation","abstract":"

    An animation for row deletions. Default is fade.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC19insertRowsAnimationSo0bc3RowG0Vvp":{"name":"insertRowsAnimation","abstract":"

    An animation for row insertions. Default is fade.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC19reloadRowsAnimationSo0bc3RowG0Vvp":{"name":"reloadRowsAnimation","abstract":"

    An animation for row reloads. Default is fade.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC18isAnimationEnabledSbvp":{"name":"isAnimationEnabled","abstract":"

    A Bool value indicating whether that enable diffing animations. Default is true.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC20skipReloadComponentsSbvp":{"name":"skipReloadComponents","abstract":"

    A Bool value indicating whether that skips reload components. Default is false.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC29alwaysRenderVisibleComponentsSbvp":{"name":"alwaysRenderVisibleComponents","abstract":"

    A Bool value indicating whether that to always render visible components","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC18keepsContentOffsetSbvp":{"name":"keepsContentOffset","abstract":"

    A Bool value indicating whether that to reset content offset after","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC21animatableChangeCountSivp":{"name":"animatableChangeCount","abstract":"

    Max number of changes that can be animated for diffing updates. Default is 300.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterCACyxGycfc":{"name":"init()","abstract":"

    Create a new updater.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC3set12allAnimationySo0bc3RowG0V_tF":{"name":"set(allAnimation:)","abstract":"

    Set given animation to all kind of diffing updates.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC7prepare6target7adapterySo0bC0C_xtF":{"name":"prepare(target:adapter:)","abstract":"

    Set the delegate and dataSource of given table view, then reload data.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC14performUpdates6target7adapter4data10completionySo0bC0C_xSayAA7SectionVGyycSgtF":{"name":"performUpdates(target:adapter:data:completion:)","abstract":"

    Calculates a set of changes to perform diffing updates.

    ","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC26performDifferentialUpdates6target7adapter4data15stagedChangeset10completionySo0bC0C_xSayAA7SectionVG13DifferenceKit06StagedL0VyANGyycSgtF":{"name":"performDifferentialUpdates(target:adapter:data:stagedChangeset:completion:)","abstract":"

    Perform diffing updates to render given data to the target.","parent_name":"UITableViewUpdater"},"Classes/UITableViewUpdater.html#/s:6Carbon18UITableViewUpdaterC23renderVisibleComponents2in7adapterySo0bC0C_xtF":{"name":"renderVisibleComponents(in:adapter:)","abstract":"

    Renders components displayed in visible area again.

    ","parent_name":"UITableViewUpdater"},"Protocols/Updater.html#/s:6Carbon7UpdaterP6TargetQa":{"name":"Target","abstract":"

    A type that represents a target to be updated for render given data.

    ","parent_name":"Updater"},"Protocols/Updater.html#/s:6Carbon7UpdaterP7AdapterQa":{"name":"Adapter","abstract":"

    A type that represents an adapter holding the data to be rendered.

    ","parent_name":"Updater"},"Protocols/Updater.html#/s:6Carbon7UpdaterP7prepare6target7adaptery6TargetQz_7AdapterQztF":{"name":"prepare(target:adapter:)","abstract":"

    Prepares given target and adapter.

    ","parent_name":"Updater"},"Protocols/Updater.html#/s:6Carbon7UpdaterP14performUpdates6target7adapter4data10completiony6TargetQz_7AdapterQzSayAA7SectionVGyycSgtF":{"name":"performUpdates(target:adapter:data:completion:)","abstract":"

    Perform updates to render given data to the target.","parent_name":"Updater"},"Protocols/Updater.html":{"name":"Updater","abstract":"

    Represents an updater that manages the updation for target.

    "},"Classes/UITableViewUpdater.html":{"name":"UITableViewUpdater","abstract":"

    An updater for managing diffing updates to render data to the UITableView.

    "},"Classes/UITableViewReloadDataUpdater.html":{"name":"UITableViewReloadDataUpdater","abstract":"

    An updater for managing to perform reload data to render data to the UITableView.

    "},"Classes/UICollectionViewUpdater.html":{"name":"UICollectionViewUpdater","abstract":"

    An updater for managing diffing updates to render data to the UICollectionView.

    "},"Classes/UICollectionViewReloadDataUpdater.html":{"name":"UICollectionViewReloadDataUpdater","abstract":"

    An updater for managing to perform reload data to render data to the UICollectionView.

    "},"Classes/UICollectionViewFlowLayoutAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewFlowLayoutAdapter(im)collectionView:layout:sizeForItemAtIndexPath:":{"name":"collectionView(_:layout:sizeForItemAt:)","abstract":"

    Returns the size for item at specified index path.

    ","parent_name":"UICollectionViewFlowLayoutAdapter"},"Classes/UICollectionViewFlowLayoutAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewFlowLayoutAdapter(im)collectionView:layout:referenceSizeForHeaderInSection:":{"name":"collectionView(_:layout:referenceSizeForHeaderInSection:)","abstract":"

    Returns the size for header in specified section.

    ","parent_name":"UICollectionViewFlowLayoutAdapter"},"Classes/UICollectionViewFlowLayoutAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewFlowLayoutAdapter(im)collectionView:layout:referenceSizeForFooterInSection:":{"name":"collectionView(_:layout:referenceSizeForFooterInSection:)","abstract":"

    Returns the size for footer in specified section.

    ","parent_name":"UICollectionViewFlowLayoutAdapter"},"Classes/UICollectionViewAdapter/SelectionContext.html#/s:6Carbon23UICollectionViewAdapterC16SelectionContextV010collectionC0So0bC0Cvp":{"name":"collectionView","abstract":"

    A collection view of the selected cell.

    ","parent_name":"SelectionContext"},"Classes/UICollectionViewAdapter/SelectionContext.html#/s:6Carbon23UICollectionViewAdapterC16SelectionContextV4nodeAA8CellNodeVvp":{"name":"node","abstract":"

    A node corresponding to the selected cell position.

    ","parent_name":"SelectionContext"},"Classes/UICollectionViewAdapter/SelectionContext.html#/s:6Carbon23UICollectionViewAdapterC16SelectionContextV9indexPath10Foundation05IndexH0Vvp":{"name":"indexPath","abstract":"

    The index path of the selected cell.

    ","parent_name":"SelectionContext"},"Classes/UICollectionViewAdapter/Config.html#/s:6Carbon23UICollectionViewAdapterC6ConfigV7defaultAEvpZ":{"name":"default","abstract":"

    The default configuration.

    ","parent_name":"Config"},"Classes/UICollectionViewAdapter/Config.html#/s:6Carbon23UICollectionViewAdapterC6ConfigV9cellClassAA0bC13ComponentCellCmvp":{"name":"cellClass","abstract":"

    The class of the cell.

    ","parent_name":"Config"},"Classes/UICollectionViewAdapter/Config.html#/s:6Carbon23UICollectionViewAdapterC6ConfigV06headerC5ClassAA0b17ComponentReusableC0Cmvp":{"name":"headerViewClass","abstract":"

    The class of the header view.

    ","parent_name":"Config"},"Classes/UICollectionViewAdapter/Config.html#/s:6Carbon23UICollectionViewAdapterC6ConfigV06footerC5ClassAA0b17ComponentReusableC0Cmvp":{"name":"footerViewClass","abstract":"

    The class of the footer view.

    ","parent_name":"Config"},"Classes/UICollectionViewAdapter/Config.html#/s:6Carbon23UICollectionViewAdapterC6ConfigV9cellClass06headercG006footercG0AeA0bC13ComponentCellCm_AA0bj8ReusableC0CmALmtcfc":{"name":"init(cellClass:headerViewClass:footerViewClass:)","abstract":"

    Create a render configuration with the classes of elements.

    ","parent_name":"Config"},"Classes/UICollectionViewAdapter.html#/s:6Carbon23UICollectionViewAdapterC4dataSayAA7SectionVGvp":{"name":"data","abstract":"

    The data to be rendered in the list UI.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/s:6Carbon23UICollectionViewAdapterC6configAC6ConfigVvp":{"name":"config","abstract":"

    A configuration that determines the classes of the elements to render.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/s:6Carbon23UICollectionViewAdapterC9didSelectyAC16SelectionContextVcSgvp":{"name":"didSelect","abstract":"

    A closure that to handle selection events of cell.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/s:6Carbon23UICollectionViewAdapterC4data6configACSayAA7SectionVG_AC6ConfigVtcfc":{"name":"init(data:config:)","abstract":"

    Create an adapter with initial data and rendering config.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter/Config.html":{"name":"Config","abstract":"

    The configuration for the classes of elements in UICollectionView.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter/SelectionContext.html":{"name":"SelectionContext","abstract":"

    Context when cell is selected.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)numberOfSectionsInCollectionView:":{"name":"numberOfSections(in:)","abstract":"

    Return the number of sections.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:numberOfItemsInSection:":{"name":"collectionView(_:numberOfItemsInSection:)","abstract":"

    Return the number of items in specified section.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:cellForItemAtIndexPath:":{"name":"collectionView(_:cellForItemAt:)","abstract":"

    Resister and dequeue the cell at specified index path.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:viewForSupplementaryElementOfKind:atIndexPath:":{"name":"collectionView(_:viewForSupplementaryElementOfKind:at:)","abstract":"

    Resister and dequeue the header or footer in specified section.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:didSelectItemAtIndexPath:":{"name":"collectionView(_:didSelectItemAt:)","abstract":"

    Callback the selected event of cell to the didSelect closure.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:willDisplayCell:forItemAtIndexPath:":{"name":"collectionView(_:willDisplay:forItemAt:)","abstract":"

    The event that the cell will display in the visible rect.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:didEndDisplayingCell:forItemAtIndexPath:":{"name":"collectionView(_:didEndDisplaying:forItemAt:)","abstract":"

    The event that the cell did left from the visible rect.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:willDisplaySupplementaryView:forElementKind:atIndexPath:":{"name":"collectionView(_:willDisplaySupplementaryView:forElementKind:at:)","abstract":"

    The event that the header or footer will display in the visible rect.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UICollectionViewAdapter.html#/c:@CM@Carbon@objc(cs)UICollectionViewAdapter(im)collectionView:didEndDisplayingSupplementaryView:forElementOfKind:atIndexPath:":{"name":"collectionView(_:didEndDisplayingSupplementaryView:forElementOfKind:at:)","abstract":"

    The event that the header or footer did left from the visible rect.

    ","parent_name":"UICollectionViewAdapter"},"Classes/UITableViewAdapter/SelectionContext.html#/s:6Carbon18UITableViewAdapterC16SelectionContextV05tableC0So0bC0Cvp":{"name":"tableView","abstract":"

    A table view of the selected cell.

    ","parent_name":"SelectionContext"},"Classes/UITableViewAdapter/SelectionContext.html#/s:6Carbon18UITableViewAdapterC16SelectionContextV4nodeAA8CellNodeVvp":{"name":"node","abstract":"

    A node corresponding to the selected cell position.

    ","parent_name":"SelectionContext"},"Classes/UITableViewAdapter/SelectionContext.html#/s:6Carbon18UITableViewAdapterC16SelectionContextV9indexPath10Foundation05IndexH0Vvp":{"name":"indexPath","abstract":"

    The index path of the selected cell.

    ","parent_name":"SelectionContext"},"Classes/UITableViewAdapter/Config.html#/s:6Carbon18UITableViewAdapterC6ConfigV7defaultAEvpZ":{"name":"default","abstract":"

    The default configuration.

    ","parent_name":"Config"},"Classes/UITableViewAdapter/Config.html#/s:6Carbon18UITableViewAdapterC6ConfigV9cellClassAA0bC13ComponentCellCmvp":{"name":"cellClass","abstract":"

    The class of the cell.

    ","parent_name":"Config"},"Classes/UITableViewAdapter/Config.html#/s:6Carbon18UITableViewAdapterC6ConfigV06headerC5ClassAA0bc21ComponentHeaderFooterC0Cmvp":{"name":"headerViewClass","abstract":"

    The class of the header view.

    ","parent_name":"Config"},"Classes/UITableViewAdapter/Config.html#/s:6Carbon18UITableViewAdapterC6ConfigV06footerC5ClassAA0bc21ComponentHeaderFooterC0Cmvp":{"name":"footerViewClass","abstract":"

    The class of the footer view.

    ","parent_name":"Config"},"Classes/UITableViewAdapter/Config.html#/s:6Carbon18UITableViewAdapterC6ConfigV9cellClass06headercG006footercG0AeA0bC13ComponentCellCm_AA0bcj12HeaderFooterC0CmALmtcfc":{"name":"init(cellClass:headerViewClass:footerViewClass:)","abstract":"

    Create a render configuration with the classes of elements.

    ","parent_name":"Config"},"Classes/UITableViewAdapter.html#/s:6Carbon18UITableViewAdapterC4dataSayAA7SectionVGvp":{"name":"data","abstract":"

    The data to be rendered in the list UI.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/s:6Carbon18UITableViewAdapterC6configAC6ConfigVvp":{"name":"config","abstract":"

    A configuration that determines the classes of the elements to render.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/s:6Carbon18UITableViewAdapterC9didSelectyAC16SelectionContextVcSgvp":{"name":"didSelect","abstract":"

    A closure that to handle selection events of cell.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/s:6Carbon18UITableViewAdapterC4data6configACSayAA7SectionVG_AC6ConfigVtcfc":{"name":"init(data:config:)","abstract":"

    Create an adapter with initial data and rendering config.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter/Config.html":{"name":"Config","abstract":"

    The configuration for the classes of elements in UITableView.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter/SelectionContext.html":{"name":"SelectionContext","abstract":"

    Context when cell is selected.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)numberOfSectionsInTableView:":{"name":"numberOfSections(in:)","abstract":"

    Return the number of sections.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:numberOfRowsInSection:":{"name":"tableView(_:numberOfRowsInSection:)","abstract":"

    Return the number of rows in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:cellForRowAtIndexPath:":{"name":"tableView(_:cellForRowAt:)","abstract":"

    Resister and dequeue the cell at specified index path.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:viewForHeaderInSection:":{"name":"tableView(_:viewForHeaderInSection:)","abstract":"

    Resister and dequeue the header in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:viewForFooterInSection:":{"name":"tableView(_:viewForFooterInSection:)","abstract":"

    Resister and dequeue the footer in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:heightForRowAtIndexPath:":{"name":"tableView(_:heightForRowAt:)","abstract":"

    Returns the height for row at specified index path.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:estimatedHeightForRowAtIndexPath:":{"name":"tableView(_:estimatedHeightForRowAt:)","abstract":"

    Returns the estimated height for row at specified index path.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:heightForHeaderInSection:":{"name":"tableView(_:heightForHeaderInSection:)","abstract":"

    Returns the height for header in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:estimatedHeightForHeaderInSection:":{"name":"tableView(_:estimatedHeightForHeaderInSection:)","abstract":"

    Returns the estimated height for header in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:heightForFooterInSection:":{"name":"tableView(_:heightForFooterInSection:)","abstract":"

    Returns the height for footer in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:estimatedHeightForFooterInSection:":{"name":"tableView(_:estimatedHeightForFooterInSection:)","abstract":"

    Returns the estimated height for footer in specified section.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:didSelectRowAtIndexPath:":{"name":"tableView(_:didSelectRowAt:)","abstract":"

    Callback the selected event of cell to the didSelect closure.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:willDisplayCell:forRowAtIndexPath:":{"name":"tableView(_:willDisplay:forRowAt:)","abstract":"

    The event that the cell will display in the visible rect.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:didEndDisplayingCell:forRowAtIndexPath:":{"name":"tableView(_:didEndDisplaying:forRowAt:)","abstract":"

    The event that the cell did left from the visible rect.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:willDisplayHeaderView:forSection:":{"name":"tableView(_:willDisplayHeaderView:forSection:)","abstract":"

    The event that the header will display in the visible rect.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:didEndDisplayingHeaderView:forSection:":{"name":"tableView(_:didEndDisplayingHeaderView:forSection:)","abstract":"

    The event that the header did left from the visible rect.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:willDisplayFooterView:forSection:":{"name":"tableView(_:willDisplayFooterView:forSection:)","abstract":"

    The event that the footer will display in the visible rect.

    ","parent_name":"UITableViewAdapter"},"Classes/UITableViewAdapter.html#/c:@CM@Carbon@objc(cs)UITableViewAdapter(im)tableView:didEndDisplayingFooterView:forSection:":{"name":"tableView(_:didEndDisplayingFooterView:forSection:)","abstract":"

    The event that the footer did left from the visible rect.

    ","parent_name":"UITableViewAdapter"},"Protocols/Adapter.html#/s:6Carbon7AdapterP4dataSayAA7SectionVGvp":{"name":"data","abstract":"

    The data to be rendered.

    ","parent_name":"Adapter"},"Protocols/Adapter.html#/s:6Carbon7AdapterPAAE9cellNodes2inSayAA8CellNodeVGSi_tF":{"name":"cellNodes(in:)","abstract":"

    Returns a collection of cell nodes in the specified section.

    ","parent_name":"Adapter"},"Protocols/Adapter.html#/s:6Carbon7AdapterPAAE8cellNode2atAA04CellD0V10Foundation9IndexPathV_tF":{"name":"cellNode(at:)","abstract":"

    Returns a node of cell at the specified index path.

    ","parent_name":"Adapter"},"Protocols/Adapter.html#/s:6Carbon7AdapterPAAE10headerNode2inAA04ViewD0VSgSi_tF":{"name":"headerNode(in:)","abstract":"

    Returns a node of header in the specified section.

    ","parent_name":"Adapter"},"Protocols/Adapter.html#/s:6Carbon7AdapterPAAE10footerNode2inAA04ViewD0VSgSi_tF":{"name":"footerNode(in:)","abstract":"

    Returns a node of footer in the specified section.

    ","parent_name":"Adapter"},"Protocols/Adapter.html":{"name":"Adapter","abstract":"

    Represents an adapter that holds data to be rendered.

    "},"Classes/UITableViewAdapter.html":{"name":"UITableViewAdapter","abstract":"

    An adapter for UITableView."},"Classes/UICollectionViewAdapter.html":{"name":"UICollectionViewAdapter","abstract":"

    An adapter for UICollectionView."},"Classes/UICollectionViewFlowLayoutAdapter.html":{"name":"UICollectionViewFlowLayoutAdapter","abstract":"

    An adapter for UICollectionView with UICollectionViewFlowLayout inherited from UICollectionViewAdapter.

    "},"Classes/Renderer.html#/s:6Carbon8RendererC6target6TargetQzSgXwvp":{"name":"target","abstract":"

    An instance of target that weakly referenced.

    ","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC7adapter7AdapterQzvp":{"name":"adapter","abstract":"

    An instance of adapter that specified at initialized.

    ","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC7updaterxvp":{"name":"updater","abstract":"

    An instance of updater that specified at initialized.

    ","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC4dataSayAA7SectionVGvp":{"name":"data","abstract":"

    Returns a current data held in adapter.","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC6target7adapter7updaterACyxG6TargetQz_7AdapterQzxtcfc":{"name":"init(target:adapter:updater:)","abstract":"

    Create a new instance with given target, adapter and updater.","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC6render_10completionyqd___yycSgtSlRd__AA7SectionV7ElementRtd__lF":{"name":"render(_:completion:)","abstract":"

    Render given collection of sections, immediately.

    ","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC6render_10completionyqd___yycSgtSlRd__AA7SectionVSg7ElementRtd__lF":{"name":"render(_:completion:)","abstract":"

    Render given collection of sections after removes contained nil, immediately.

    ","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC6render_10completionyAA7SectionVd_yycSgtF":{"name":"render(_:completion:)","abstract":"

    Render a given variadic number of sections, immediately.

    ","parent_name":"Renderer"},"Classes/Renderer.html#/s:6Carbon8RendererC6render_10completionyAA7SectionVSgd_yycSgtF":{"name":"render(_:completion:)","abstract":"

    Render a given variadic number of sections after removes contained nil, immediately.

    ","parent_name":"Renderer"},"Classes/Renderer.html":{"name":"Renderer","abstract":"

    Renderer is a controller to render passed data to target"},"Structs/Section.html#/s:6Carbon7SectionV2ids11AnyHashableVvp":{"name":"id","abstract":"

    A type-erased identifier that can be used to uniquely","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV6headerAA8ViewNodeVSgvp":{"name":"header","abstract":"

    A node representing header view.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV5cellsSayAA8CellNodeVGvp":{"name":"cells","abstract":"

    A collection of nodes representing cells.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV6footerAA8ViewNodeVSgvp":{"name":"footer","abstract":"

    A node representing footer view.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV2id6header5cells6footerACx_AA8ViewNodeVSgq_AJtcSHRzSlR_AA04CellH0V7ElementRt_r0_lufc":{"name":"init(id:header:cells:footer:)","abstract":"

    Create a section wrapping id, header node, footer node and cell nodes.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV2id6header5cells6footerACx_AA8ViewNodeVSgq_AJtcSHRzSlR_AA04CellH0VSg7ElementRt_r0_lufc":{"name":"init(id:header:cells:footer:)","abstract":"

    Create a section wrapping id, header node, footer node and cell nodes.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV2id6header6footerACx_AA8ViewNodeVSgAItcSHRzlufc":{"name":"init(id:header:footer:)","abstract":"

    Create a section wrapping id, header node, footer node.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV20differenceIdentifiers11AnyHashableVvp":{"name":"differenceIdentifier","abstract":"

    An identifier value for difference calculation.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV8elementsSayAA8CellNodeVGvp":{"name":"elements","abstract":"

    The collection of element in the section.

    ","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV14isContentEqual2toSbAC_tF":{"name":"isContentEqual(to:)","abstract":"

    Indicate whether the content of self is equals to the content of","parent_name":"Section"},"Structs/Section.html#/s:6Carbon7SectionV6source8elementsA2C_xtcSlRzAA8CellNodeV7ElementRtzlufc":{"name":"init(source:elements:)","abstract":"

    Creates a new section reproducing the given source section with replacing the elements.

    ","parent_name":"Section"},"Structs/Section.html":{"name":"Section","abstract":"

    Represents a section of list UI, containing header node, footer node"},"Structs/ViewNode.html#/s:6Carbon8ViewNodeV9componentAA12AnyComponentVvp":{"name":"component","abstract":"

    A type-erased component which wrapped in self.

    ","parent_name":"ViewNode"},"Structs/ViewNode.html#/s:6Carbon8ViewNodeVyACxcAA9ComponentRzlufc":{"name":"init(_:)","abstract":"

    Create a node wrapping given component.

    ","parent_name":"ViewNode"},"Structs/ViewNode.html#/s:6Carbon8ViewNodeV9component2asxSgxm_tlF":{"name":"component(as:)","abstract":"

    Returns a base instance of component casted as given type if possible.

    ","parent_name":"ViewNode"},"Structs/ViewNode.html#/s:6Carbon8ViewNodeV14isContentEqual2toSbAC_tF":{"name":"isContentEqual(to:)","abstract":"

    Indicate whether the content of self is equals to the content of","parent_name":"ViewNode"},"Structs/ViewNode.html#/s:6Carbon8ViewNodeV16debugDescriptionSSvp":{"name":"debugDescription","abstract":"

    A textual representation of this instance, suitable for debugging.

    ","parent_name":"ViewNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV2ids11AnyHashableVvp":{"name":"id","abstract":"

    A type-erased identifier that can be used to uniquely","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV9componentAA12AnyComponentVvp":{"name":"component","abstract":"

    A type-erased component which wrapped in self.

    ","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV2id_ACx_q_tcSHRzAA9ComponentR_r0_lufc":{"name":"init(id:_:)","abstract":"

    Create a node wrapping given id and component.

    ","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeVyACxcAA21IdentifiableComponentRzlufc":{"name":"init(_:)","abstract":"

    Create a node wrapping given component and its id.

    ","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV9component2asxSgxm_tlF":{"name":"component(as:)","abstract":"

    Returns a base instance of component casted as given type if possible.

    ","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV20differenceIdentifiers11AnyHashableVvp":{"name":"differenceIdentifier","abstract":"

    An identifier value for difference calculation.

    ","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV14isContentEqual2toSbAC_tF":{"name":"isContentEqual(to:)","abstract":"

    Indicate whether the content of self is equals to the content of","parent_name":"CellNode"},"Structs/CellNode.html#/s:6Carbon8CellNodeV16debugDescriptionSSvp":{"name":"debugDescription","abstract":"

    A textual representation of this instance, suitable for debugging.

    ","parent_name":"CellNode"},"Structs/CellNode.html":{"name":"CellNode","abstract":"

    The node for cell that can be uniquely identified."},"Structs/ViewNode.html":{"name":"ViewNode","abstract":"

    The node for view which need not be uniquely identified like header or footer."},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV15reuseIdentifierSSvp":{"name":"reuseIdentifier","abstract":"

    A string used to identify a element that is reusable. Default is the type name of Content.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentVyACxcAA0C0Rzlufc":{"name":"init(_:)","abstract":"

    Create a type-erased component that wraps the given instance.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV13renderContentypyF":{"name":"renderContent()","abstract":"

    Returns a new instance of Content.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV6render2inyyp_tF":{"name":"render(in:)","abstract":"

    Render properties into the content on the element of list UI.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV13referenceSize2inSo6CGSizeVSgSo6CGRectV_tF":{"name":"referenceSize(in:)","abstract":"

    Returns the referencing size of content to render on the list UI.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV19shouldContentUpdate4withSbAC_tF":{"name":"shouldContentUpdate(with:)","abstract":"

    Returns a Bool value indicating whether the content should be reloaded.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV12shouldRender4next2inSbAC_yptF":{"name":"shouldRender(next:in:)","abstract":"

    Returns a Bool value indicating whether component should be render again.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV6layout7content2inyyp_So6UIViewCtF":{"name":"layout(content:in:)","abstract":"

    Layout the content on top of element of the list UI.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV18contentWillDisplayyyypF":{"name":"contentWillDisplay(_:)","abstract":"

    Invoked every time of before a component got into visible area.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV20contentDidEndDisplayyyypF":{"name":"contentDidEndDisplay(_:)","abstract":"

    Invoked every time of after a component went out from visible area.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV2asyxSgxmlF":{"name":"as(_:)","abstract":"

    Returns a base instance casted as given type if possible.

    ","parent_name":"AnyComponent"},"Structs/AnyComponent.html#/s:6Carbon12AnyComponentV16debugDescriptionSSvp":{"name":"debugDescription","abstract":"

    A textual representation of this instance, suitable for debugging.

    ","parent_name":"AnyComponent"},"Protocols/IdentifiableComponent.html#/s:6Carbon21IdentifiableComponentP2IDQa":{"name":"ID","abstract":"

    A type that represents an id that used to uniquely identify the component.

    ","parent_name":"IdentifiableComponent"},"Protocols/IdentifiableComponent.html#/s:6Carbon21IdentifiableComponentP2id2IDQzvp":{"name":"id","abstract":"

    An identifier that used to uniquely identify the component.

    ","parent_name":"IdentifiableComponent"},"Protocols/Component.html#/s:6Carbon9ComponentP7ContentQa":{"name":"Content","abstract":"

    A type that represents a content to be render on the element of list UI.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP13renderContent0D0QzyF":{"name":"renderContent()","abstract":"

    Returns a new instance of Content.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP6render2iny7ContentQz_tF":{"name":"render(in:)","abstract":"

    Render properties into the content.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP13referenceSize2inSo6CGSizeVSgSo6CGRectV_tF":{"name":"referenceSize(in:)","abstract":"

    Returns the referencing size of content to render on the list UI.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP19shouldContentUpdate4withSbx_tF":{"name":"shouldContentUpdate(with:)","abstract":"

    Returns a Bool value indicating whether the content should be reloaded.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP15reuseIdentifierSSvp":{"name":"reuseIdentifier","abstract":"

    A string used to identify a element that is reusable. Default is the type name of Content.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP12shouldRender4next2inSbx_7ContentQztF":{"name":"shouldRender(next:in:)","abstract":"

    Returns a Bool value indicating whether component should be render again.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP6layout7content2iny7ContentQz_So6UIViewCtF":{"name":"layout(content:in:)","abstract":"

    Layout the content on top of element of the list UI.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP18contentWillDisplayyy7ContentQzF":{"name":"contentWillDisplay(_:)","abstract":"

    Invoked every time of before a component got into visible area.

    ","parent_name":"Component"},"Protocols/Component.html#/s:6Carbon9ComponentP20contentDidEndDisplayyy7ContentQzF":{"name":"contentDidEndDisplay(_:)","abstract":"

    Invoked every time of after a component went out from visible area.

    ","parent_name":"Component"},"Protocols/Component.html":{"name":"Component","abstract":"

    Represents a component of a list UI such as UITableView or UICollectionView.

    "},"Protocols/IdentifiableComponent.html":{"name":"IdentifiableComponent","abstract":"

    Represents a component that can be uniquely identify.

    "},"Structs/AnyComponent.html":{"name":"AnyComponent","abstract":"

    A type-erased component.

    "},"Components.html":{"name":"Components"},"Nodes.html":{"name":"Nodes"},"Section.html":{"name":"Section"},"Renderer.html":{"name":"Renderer"},"Adapters.html":{"name":"Adapters"},"Updaters.html":{"name":"Updaters"},"Interfaces.html":{"name":"Interfaces"},"Content Protocols.html":{"name":"Content Protocols"},"Changesets.html":{"name":"Changesets"}} \ No newline at end of file