gitextract_rs09iz2z/ ├── .codecov.yml ├── .gitignore ├── .gitmodules ├── .swift-version ├── .travis.yml ├── Cartfile ├── Cartfile.resolved ├── Demo.playground/ │ ├── Pages/ │ │ └── Untitled Page.xcplaygroundpage/ │ │ ├── Contents.swift │ │ └── timeline.xctimeline │ └── contents.xcplayground ├── Documentation/ │ ├── Language Enhancements.md │ └── Overview.md ├── GlueKit.podspec ├── GlueKit.xcodeproj/ │ ├── project.pbxproj │ ├── project.xcworkspace/ │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata/ │ │ └── GlueKit.xcscmblueprint │ └── xcshareddata/ │ ├── xcbaselines/ │ │ ├── BB351AFB1DB81E67005F083F.xcbaseline/ │ │ │ ├── EBF79DD4-EE66-4D33-B51C-EE37857B70A1.plist │ │ │ └── Info.plist │ │ └── BBB55BE11C8FD1C60050DDA9.xcbaseline/ │ │ ├── DD663408-0BA9-46F9-868F-F1570927CA52.plist │ │ └── Info.plist │ └── xcschemes/ │ ├── GlueKit-PerformanceTests.xcscheme │ ├── GlueKit-iOS.xcscheme │ ├── GlueKit-macOS.xcscheme │ ├── GlueKit-tvOS.xcscheme │ └── GlueKit-watchOS.xcscheme ├── GlueKit.xcworkspace/ │ ├── contents.xcworkspacedata │ └── xcshareddata/ │ └── GlueKit.xcscmblueprint ├── LICENSE.md ├── Package.swift ├── README.md ├── Sources/ │ ├── Abstract.swift │ ├── AccumulatedSource.swift │ ├── ArrayBasedTableViewDataSource.swift │ ├── ArrayChange.swift │ ├── ArrayChangeSeparation.swift │ ├── ArrayConcatenation.swift │ ├── ArrayFilteringIndexmap.swift │ ├── ArrayFilteringOnObservableBool.swift │ ├── ArrayFilteringOnPredicate.swift │ ├── ArrayFolding.swift │ ├── ArrayGatheringSource.swift │ ├── ArrayMappingForArrayField.swift │ ├── ArrayMappingForValue.swift │ ├── ArrayMappingForValueField.swift │ ├── ArrayReference.swift │ ├── ArrayVariable.swift │ ├── BracketingSource.swift │ ├── BufferedArray.swift │ ├── BufferedSet.swift │ ├── BufferedSource.swift │ ├── BufferedValue.swift │ ├── CADisplayLink Extensions.swift │ ├── Change.swift │ ├── ChangesSource.swift │ ├── CompositeObservable.swift │ ├── CompositeUpdatable.swift │ ├── ComputedUpdatable.swift │ ├── Connect.swift │ ├── Connector.swift │ ├── DependentValue.swift │ ├── DispatchSource.swift │ ├── DistinctUnion.swift │ ├── DistinctValue.swift │ ├── Info.plist │ ├── Locks.swift │ ├── MergedSource.swift │ ├── NSButton Glue.swift │ ├── NSControl Glue.swift │ ├── NSNotificationCenter Support.swift │ ├── NSObject Glue.swift │ ├── NSPopUpButton Glue.swift │ ├── NSTextField Glue.swift │ ├── ObservableArray.swift │ ├── ObservableContains.swift │ ├── ObservableSet.swift │ ├── ObservableType.swift │ ├── ObservableValue.swift │ ├── OwnedSink.swift │ ├── RefList.swift │ ├── Reference.swift │ ├── SetChange.swift │ ├── SetFilteringOnObservableBool.swift │ ├── SetFilteringOnPredicate.swift │ ├── SetFolding.swift │ ├── SetGatheringSource.swift │ ├── SetMappingBase.swift │ ├── SetMappingForArrayField.swift │ ├── SetMappingForSequence.swift │ ├── SetMappingForSetField.swift │ ├── SetMappingForValue.swift │ ├── SetMappingForValueField.swift │ ├── SetReference.swift │ ├── SetSortingByComparableField.swift │ ├── SetSortingByComparator.swift │ ├── SetSortingByMappingToComparable.swift │ ├── SetSortingByMappingToObservableComparable.swift │ ├── SetVariable.swift │ ├── Signal.swift │ ├── SimpleSources.swift │ ├── Sink.swift │ ├── Source.swift │ ├── TimerSource.swift │ ├── TransactionalThing.swift │ ├── TransformedSink.swift │ ├── TransformedSource.swift │ ├── TwoWayBinding.swift │ ├── Type Helpers.swift │ ├── UIBarButtonItem Extensions.swift │ ├── UIControl Glue.swift │ ├── UIDevice Glue.swift │ ├── UIGestureRecognizer Glue.swift │ ├── UILabel Glue.swift │ ├── UISearchBar Glue.swift │ ├── UISwitch Glue.swift │ ├── UpdatableArray.swift │ ├── UpdatableSet.swift │ ├── UpdatableValue.swift │ ├── Update.swift │ ├── ValueChange.swift │ ├── ValueMappingForArrayField.swift │ ├── ValueMappingForSetField.swift │ ├── ValueMappingForSourceField.swift │ ├── ValueMappingForValue.swift │ ├── ValueMappingForValueField.swift │ ├── ValueReference.swift │ └── Variable.swift ├── Tests/ │ ├── GlueKitTests/ │ │ ├── AnySinkTests.swift │ │ ├── AnySourceTests.swift │ │ ├── ArrayBufferingTests.swift │ │ ├── ArrayChangeSeparationTests.swift │ │ ├── ArrayChangeTests.swift │ │ ├── ArrayConcatenationTests.swift │ │ ├── ArrayFilteringTests.swift │ │ ├── ArrayFoldingTests.swift │ │ ├── ArrayMappingTests.swift │ │ ├── ArrayModificationTests.swift │ │ ├── ArrayReferenceTests.swift │ │ ├── ArrayVariableTests.swift │ │ ├── Bookshelf.swift │ │ ├── BracketingSourceTests.swift │ │ ├── BufferedSourceTests.swift │ │ ├── ChangeTests.swift │ │ ├── ChangesSourceTests.swift │ │ ├── CombinedObservableTests.swift │ │ ├── CombinedUpdatableTests.swift │ │ ├── ConnectorTests.swift │ │ ├── DispatchSourceTests.swift │ │ ├── DistinctTests.swift │ │ ├── DistinctUnionTests.swift │ │ ├── Info.plist │ │ ├── KVOSupportTests.swift │ │ ├── MergedSourceTests.swift │ │ ├── MockArrayObserver.swift │ │ ├── MockSetObserver.swift │ │ ├── MockSink.swift │ │ ├── MockUpdateSink.swift │ │ ├── NSUserDefaultsSupportTests.swift │ │ ├── NotificationCenterSupportTests.swift │ │ ├── ObservableArrayTests.swift │ │ ├── ObservableSetTests.swift │ │ ├── ObservableTypeTests.swift │ │ ├── ObservableValueTests.swift │ │ ├── RefListTests.swift │ │ ├── SetBufferingTests.swift │ │ ├── SetFilteringTests.swift │ │ ├── SetFoldingTests.swift │ │ ├── SetMappingTests.swift │ │ ├── SetReferenceTests.swift │ │ ├── SetSortingTests.swift │ │ ├── SetVariableTests.swift │ │ ├── SignalTests.swift │ │ ├── SimpleSourcesTests.swift │ │ ├── SourceOperatorTests.swift │ │ ├── TestChange.swift │ │ ├── TestObservable.swift │ │ ├── TestUpdatable.swift │ │ ├── TestUtilities.swift │ │ ├── TimerSourceTests.swift │ │ ├── TransactionStateTests.swift │ │ ├── TwoWayBindingTests.swift │ │ ├── TypeHelperTests.swift │ │ ├── UpdatableValueTests.swift │ │ ├── UpdateTests.swift │ │ ├── ValueBufferingTests.swift │ │ ├── ValueChangeTests.swift │ │ ├── ValueMappingTests.swift │ │ ├── ValueReferenceTests.swift │ │ └── VariableTests.swift │ └── PerformanceTests/ │ ├── GlueKitPerformanceTests.swift │ └── Info.plist ├── jazzy.sh └── version.xcconfig