├── .gitignore ├── .swiftlint.yml ├── Brewfile ├── LICENSE ├── Package.swift ├── README.md ├── Snail.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist └── xcshareddata │ ├── IDETemplateMacros.plist │ └── xcschemes │ ├── Snail.xcscheme │ └── SnailTests.xcscheme ├── Snail ├── Closure.swift ├── Disposer.swift ├── Event.swift ├── Extensions │ ├── NotificationCenterExtensions.swift │ ├── UIBarButtonItemExtensions.swift │ ├── UIControlExtensions.swift │ ├── UIGestureRecognizerExtensions.swift │ ├── UIViewControllerExtensions.swift │ ├── UIViewExtensions.swift │ └── URLSessionExtensions.swift ├── Fail.swift ├── Info.plist ├── Just.swift ├── Observable.swift ├── ObservableType.swift ├── Replay.swift ├── Scheduler.swift ├── Snail+Combine │ ├── DemandBuffer.swift │ ├── Observable+Combine.swift │ ├── SnailPublisher.swift │ └── SnailSubscription.swift ├── Snail.h ├── Subscriber.swift ├── Unique.swift └── Variable.swift ├── SnailTests ├── ClosureTests.swift ├── Combine │ ├── FailAsPublisherTests.swift │ ├── JustAsPublisherTests.swift │ ├── ObservableAsPublisherTests.swift │ ├── ReplayAsPublisherTests.swift │ ├── UniqueAsPublisherTests.swift │ └── VariableAsPublisherTests.swift ├── DisposerTests.swift ├── Extensions │ └── NotificationCenterExtensions.swift ├── FailTests.swift ├── Info.plist ├── JustTests.swift ├── ObservableTests.swift ├── ReplayTests.swift ├── UniqueTests.swift └── VariableTests.swift ├── codecov.yml ├── scripts ├── release.sh ├── setup.sh └── template.sh └── templates └── Snail.erb /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/.gitignore -------------------------------------------------------------------------------- /.swiftlint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/.swiftlint.yml -------------------------------------------------------------------------------- /Brewfile: -------------------------------------------------------------------------------- 1 | brew "swiftlint" 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/LICENSE -------------------------------------------------------------------------------- /Package.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Package.swift -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/README.md -------------------------------------------------------------------------------- /Snail.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /Snail.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Snail.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /Snail.xcodeproj/xcshareddata/IDETemplateMacros.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail.xcodeproj/xcshareddata/IDETemplateMacros.plist -------------------------------------------------------------------------------- /Snail.xcodeproj/xcshareddata/xcschemes/Snail.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail.xcodeproj/xcshareddata/xcschemes/Snail.xcscheme -------------------------------------------------------------------------------- /Snail.xcodeproj/xcshareddata/xcschemes/SnailTests.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail.xcodeproj/xcshareddata/xcschemes/SnailTests.xcscheme -------------------------------------------------------------------------------- /Snail/Closure.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Closure.swift -------------------------------------------------------------------------------- /Snail/Disposer.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Disposer.swift -------------------------------------------------------------------------------- /Snail/Event.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Event.swift -------------------------------------------------------------------------------- /Snail/Extensions/NotificationCenterExtensions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Extensions/NotificationCenterExtensions.swift -------------------------------------------------------------------------------- /Snail/Extensions/UIBarButtonItemExtensions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Extensions/UIBarButtonItemExtensions.swift -------------------------------------------------------------------------------- /Snail/Extensions/UIControlExtensions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Extensions/UIControlExtensions.swift -------------------------------------------------------------------------------- /Snail/Extensions/UIGestureRecognizerExtensions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Extensions/UIGestureRecognizerExtensions.swift -------------------------------------------------------------------------------- /Snail/Extensions/UIViewControllerExtensions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Extensions/UIViewControllerExtensions.swift -------------------------------------------------------------------------------- /Snail/Extensions/UIViewExtensions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Extensions/UIViewExtensions.swift -------------------------------------------------------------------------------- /Snail/Extensions/URLSessionExtensions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Extensions/URLSessionExtensions.swift -------------------------------------------------------------------------------- /Snail/Fail.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Fail.swift -------------------------------------------------------------------------------- /Snail/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Info.plist -------------------------------------------------------------------------------- /Snail/Just.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Just.swift -------------------------------------------------------------------------------- /Snail/Observable.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Observable.swift -------------------------------------------------------------------------------- /Snail/ObservableType.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/ObservableType.swift -------------------------------------------------------------------------------- /Snail/Replay.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Replay.swift -------------------------------------------------------------------------------- /Snail/Scheduler.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Scheduler.swift -------------------------------------------------------------------------------- /Snail/Snail+Combine/DemandBuffer.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Snail+Combine/DemandBuffer.swift -------------------------------------------------------------------------------- /Snail/Snail+Combine/Observable+Combine.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Snail+Combine/Observable+Combine.swift -------------------------------------------------------------------------------- /Snail/Snail+Combine/SnailPublisher.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Snail+Combine/SnailPublisher.swift -------------------------------------------------------------------------------- /Snail/Snail+Combine/SnailSubscription.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Snail+Combine/SnailSubscription.swift -------------------------------------------------------------------------------- /Snail/Snail.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Snail.h -------------------------------------------------------------------------------- /Snail/Subscriber.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Subscriber.swift -------------------------------------------------------------------------------- /Snail/Unique.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Unique.swift -------------------------------------------------------------------------------- /Snail/Variable.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/Snail/Variable.swift -------------------------------------------------------------------------------- /SnailTests/ClosureTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/ClosureTests.swift -------------------------------------------------------------------------------- /SnailTests/Combine/FailAsPublisherTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/Combine/FailAsPublisherTests.swift -------------------------------------------------------------------------------- /SnailTests/Combine/JustAsPublisherTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/Combine/JustAsPublisherTests.swift -------------------------------------------------------------------------------- /SnailTests/Combine/ObservableAsPublisherTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/Combine/ObservableAsPublisherTests.swift -------------------------------------------------------------------------------- /SnailTests/Combine/ReplayAsPublisherTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/Combine/ReplayAsPublisherTests.swift -------------------------------------------------------------------------------- /SnailTests/Combine/UniqueAsPublisherTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/Combine/UniqueAsPublisherTests.swift -------------------------------------------------------------------------------- /SnailTests/Combine/VariableAsPublisherTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/Combine/VariableAsPublisherTests.swift -------------------------------------------------------------------------------- /SnailTests/DisposerTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/DisposerTests.swift -------------------------------------------------------------------------------- /SnailTests/Extensions/NotificationCenterExtensions.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/Extensions/NotificationCenterExtensions.swift -------------------------------------------------------------------------------- /SnailTests/FailTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/FailTests.swift -------------------------------------------------------------------------------- /SnailTests/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/Info.plist -------------------------------------------------------------------------------- /SnailTests/JustTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/JustTests.swift -------------------------------------------------------------------------------- /SnailTests/ObservableTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/ObservableTests.swift -------------------------------------------------------------------------------- /SnailTests/ReplayTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/ReplayTests.swift -------------------------------------------------------------------------------- /SnailTests/UniqueTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/UniqueTests.swift -------------------------------------------------------------------------------- /SnailTests/VariableTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/SnailTests/VariableTests.swift -------------------------------------------------------------------------------- /codecov.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/codecov.yml -------------------------------------------------------------------------------- /scripts/release.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/scripts/release.sh -------------------------------------------------------------------------------- /scripts/setup.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/scripts/setup.sh -------------------------------------------------------------------------------- /scripts/template.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/scripts/template.sh -------------------------------------------------------------------------------- /templates/Snail.erb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/UrbanCompass/Snail/HEAD/templates/Snail.erb --------------------------------------------------------------------------------