From af8a191159343603450f9e08fee503a655df90b4 Mon Sep 17 00:00:00 2001 From: onevcat Date: Wed, 26 Jul 2017 22:15:19 +0900 Subject: [PATCH] Bump version to 3.10.4 --- CHANGELOG.md | 7 + Demo/Kingfisher-Demo/Info.plist | 4 +- Demo/Kingfisher-macOS-Demo/Info.plist | 4 +- Demo/Kingfisher-tvOS-Demo/Info.plist | 4 +- .../Info.plist | 4 +- Demo/Kingfisher-watchOS-Demo/Info.plist | 4 +- Kingfisher.podspec | 2 +- Kingfisher.xcodeproj/project.pbxproj | 32 +- Sources/Info.plist | 4 +- Tests/KingfisherTests-macOS/Info.plist | 4 +- Tests/KingfisherTests-tvOS/Info.plist | 4 +- Tests/KingfisherTests/Info.plist | 4 +- docs/Classes.html | 21 +- docs/Classes/AnimatedImageView.html | 29 +- docs/Classes/ImageCache.html | 55 +-- docs/Classes/ImageCache/CacheCheckResult.html | 11 +- docs/Classes/ImageDownloader.html | 27 +- docs/Classes/ImagePrefetcher.html | 17 +- docs/Classes/Kingfisher.html | 67 ++-- docs/Classes/KingfisherManager.html | 17 +- docs/Classes/RetrieveImageTask.html | 15 +- docs/Enums.html | 23 +- docs/Enums/CacheType.html | 13 +- docs/Enums/ContentMode.html | 13 +- docs/Enums/ImageProcessItem.html | 11 +- docs/Enums/ImageTransition.html | 21 +- docs/Enums/IndicatorType.html | 15 +- docs/Enums/KingfisherError.html | 19 +- docs/Enums/KingfisherOptionsInfoItem.html | 45 +-- docs/Extensions.html | 31 +- docs/Extensions/CGSize.html | 12 +- docs/Extensions/Collection.html | 45 +-- docs/Extensions/Data.html | 12 +- docs/Extensions/Image.html | 23 +- docs/Extensions/ImageView.html | 17 +- docs/Extensions/Notification.html | 40 +-- docs/Extensions/Notification/Name.html | 326 ++++++++++++++++++ docs/Extensions/String.html | 9 +- docs/Extensions/UIButton.html | 21 +- docs/Extensions/URL.html | 11 +- docs/Functions.html | 9 +- docs/Global Variables.html | 13 +- docs/Protocols.html | 25 +- .../AuthenticationChallengeResponsable.html | 9 +- docs/Protocols/CIImageProcessor.html | 11 +- docs/Protocols/CacheSerializer.html | 11 +- .../ImageDownloadRequestModifier.html | 9 +- docs/Protocols/ImageDownloaderDelegate.html | 13 +- docs/Protocols/ImageProcessor.html | 13 +- docs/Protocols/Indicator.html | 16 +- docs/Protocols/KingfisherCompatible.html | 9 +- docs/Protocols/Resource.html | 11 +- docs/Structs.html | 45 +-- docs/Structs/AnyModifier.html | 11 +- docs/Structs/BlackWhiteProcessor.html | 13 +- docs/Structs/BlurImageProcessor.html | 15 +- docs/Structs/ColorControlsProcessor.html | 21 +- docs/Structs/CroppingImageProcessor.html | 17 +- docs/Structs/DefaultCacheSerializer.html | 13 +- docs/Structs/DefaultImageProcessor.html | 15 +- docs/Structs/Filter.html | 13 +- .../FormatIndicatedCacheSerializer.html | 17 +- docs/Structs/ImageResource.html | 13 +- docs/Structs/OverlayImageProcessor.html | 17 +- docs/Structs/RectCorner.html | 21 +- docs/Structs/ResizingImageProcessor.html | 21 +- docs/Structs/RetrieveImageDownloadTask.html | 15 +- docs/Structs/RoundCornerImageProcessor.html | 19 +- docs/Structs/TintImageProcessor.html | 15 +- docs/Typealiases.html | 21 +- .../Contents/Resources/Documents/Classes.html | 21 +- .../Documents/Classes/AnimatedImageView.html | 29 +- .../Documents/Classes/ImageCache.html | 55 +-- .../Classes/ImageCache/CacheCheckResult.html | 11 +- .../Documents/Classes/ImageDownloader.html | 27 +- .../Documents/Classes/ImagePrefetcher.html | 17 +- .../Documents/Classes/Kingfisher.html | 67 ++-- .../Documents/Classes/KingfisherManager.html | 17 +- .../Documents/Classes/RetrieveImageTask.html | 15 +- .../Contents/Resources/Documents/Enums.html | 23 +- .../Resources/Documents/Enums/CacheType.html | 13 +- .../Documents/Enums/ContentMode.html | 13 +- .../Documents/Enums/ImageProcessItem.html | 11 +- .../Documents/Enums/ImageTransition.html | 21 +- .../Documents/Enums/IndicatorType.html | 15 +- .../Documents/Enums/KingfisherError.html | 19 +- .../Enums/KingfisherOptionsInfoItem.html | 45 +-- .../Resources/Documents/Extensions.html | 31 +- .../Documents/Extensions/CGSize.html | 12 +- .../Documents/Extensions/Collection.html | 45 +-- .../Resources/Documents/Extensions/Data.html | 12 +- .../Resources/Documents/Extensions/Image.html | 23 +- .../Documents/Extensions/ImageView.html | 17 +- .../Documents/Extensions/Notification.html | 40 +-- .../Extensions/Notification/Name.html | 326 ++++++++++++++++++ .../Documents/Extensions/String.html | 9 +- .../Documents/Extensions/UIButton.html | 21 +- .../Resources/Documents/Extensions/URL.html | 11 +- .../Resources/Documents/Functions.html | 9 +- .../Resources/Documents/Global Variables.html | 13 +- .../Resources/Documents/Protocols.html | 25 +- .../AuthenticationChallengeResponsable.html | 9 +- .../Documents/Protocols/CIImageProcessor.html | 11 +- .../Documents/Protocols/CacheSerializer.html | 11 +- .../ImageDownloadRequestModifier.html | 9 +- .../Protocols/ImageDownloaderDelegate.html | 13 +- .../Documents/Protocols/ImageProcessor.html | 13 +- .../Documents/Protocols/Indicator.html | 16 +- .../Protocols/KingfisherCompatible.html | 9 +- .../Documents/Protocols/Resource.html | 11 +- .../Contents/Resources/Documents/Structs.html | 45 +-- .../Documents/Structs/AnyModifier.html | 11 +- .../Structs/BlackWhiteProcessor.html | 13 +- .../Documents/Structs/BlurImageProcessor.html | 15 +- .../Structs/ColorControlsProcessor.html | 21 +- .../Structs/CroppingImageProcessor.html | 17 +- .../Structs/DefaultCacheSerializer.html | 13 +- .../Structs/DefaultImageProcessor.html | 15 +- .../Resources/Documents/Structs/Filter.html | 13 +- .../FormatIndicatedCacheSerializer.html | 17 +- .../Documents/Structs/ImageResource.html | 13 +- .../Structs/OverlayImageProcessor.html | 17 +- .../Documents/Structs/RectCorner.html | 21 +- .../Structs/ResizingImageProcessor.html | 21 +- .../Structs/RetrieveImageDownloadTask.html | 15 +- .../Structs/RoundCornerImageProcessor.html | 19 +- .../Documents/Structs/TintImageProcessor.html | 15 +- .../Resources/Documents/Typealiases.html | 21 +- .../Contents/Resources/Documents/index.html | 7 +- .../Contents/Resources/Documents/search.json | 2 +- .../Contents/Resources/docSet.dsidx | Bin 114688 -> 110592 bytes docs/docsets/Kingfisher.tgz | Bin 155338 -> 155300 bytes docs/docsets/Kingfisher.xml | 2 +- docs/index.html | 7 +- docs/search.json | 2 +- docs/undocumented.json | 158 ++++----- 136 files changed, 2032 insertions(+), 1097 deletions(-) create mode 100644 docs/Extensions/Notification/Name.html create mode 100644 docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Notification/Name.html diff --git a/CHANGELOG.md b/CHANGELOG.md index 9a65ae73e..99c132525 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,13 @@ ----- +## [3.10.4 - Indicator Size](https://github.com/onevcat/Kingfisher/releases/tag/3.10.4) (2017-07-26) + +#### Fix +* Respect image and custom indicator size. Now Kingfisher will not resize the indicators to the image size for you automatically. + +--- + ## [3.10.3 - ProMotion](https://github.com/onevcat/Kingfisher/releases/tag/3.10.3) (2017-07-06) #### Fix diff --git a/Demo/Kingfisher-Demo/Info.plist b/Demo/Kingfisher-Demo/Info.plist index 9352d775b..76932d5d5 100644 --- a/Demo/Kingfisher-Demo/Info.plist +++ b/Demo/Kingfisher-Demo/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 3.10.3 + 3.10.4 CFBundleSignature ???? CFBundleVersion - 1088 + 1092 LSRequiresIPhoneOS UILaunchStoryboardName diff --git a/Demo/Kingfisher-macOS-Demo/Info.plist b/Demo/Kingfisher-macOS-Demo/Info.plist index bc9d7f1da..86179cb71 100644 --- a/Demo/Kingfisher-macOS-Demo/Info.plist +++ b/Demo/Kingfisher-macOS-Demo/Info.plist @@ -17,11 +17,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 3.10.3 + 3.10.4 CFBundleSignature ???? CFBundleVersion - 1088 + 1092 LSMinimumSystemVersion $(MACOSX_DEPLOYMENT_TARGET) NSHumanReadableCopyright diff --git a/Demo/Kingfisher-tvOS-Demo/Info.plist b/Demo/Kingfisher-tvOS-Demo/Info.plist index 82f5e4ab2..5e31b71cc 100644 --- a/Demo/Kingfisher-tvOS-Demo/Info.plist +++ b/Demo/Kingfisher-tvOS-Demo/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 3.10.3 + 3.10.4 CFBundleSignature ???? CFBundleVersion - 1088 + 1092 LSRequiresIPhoneOS UIMainStoryboardFile diff --git a/Demo/Kingfisher-watchOS-Demo Extension/Info.plist b/Demo/Kingfisher-watchOS-Demo Extension/Info.plist index 8d80a959c..c3fe40cb4 100644 --- a/Demo/Kingfisher-watchOS-Demo Extension/Info.plist +++ b/Demo/Kingfisher-watchOS-Demo Extension/Info.plist @@ -17,11 +17,11 @@ CFBundlePackageType XPC! CFBundleShortVersionString - 3.10.3 + 3.10.4 CFBundleSignature ???? CFBundleVersion - 1088 + 1092 NSExtension NSExtensionAttributes diff --git a/Demo/Kingfisher-watchOS-Demo/Info.plist b/Demo/Kingfisher-watchOS-Demo/Info.plist index fa4afa4c6..8ef786467 100644 --- a/Demo/Kingfisher-watchOS-Demo/Info.plist +++ b/Demo/Kingfisher-watchOS-Demo/Info.plist @@ -17,11 +17,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 3.10.3 + 3.10.4 CFBundleSignature ???? CFBundleVersion - 1088 + 1092 UISupportedInterfaceOrientations UIInterfaceOrientationPortrait diff --git a/Kingfisher.podspec b/Kingfisher.podspec index 553e85f93..462c5c7fc 100644 --- a/Kingfisher.podspec +++ b/Kingfisher.podspec @@ -1,7 +1,7 @@ Pod::Spec.new do |s| s.name = "Kingfisher" - s.version = "3.10.3" + s.version = "3.10.4" s.summary = "A lightweight and pure Swift implemented library for downloading and cacheing image from the web." s.description = <<-DESC diff --git a/Kingfisher.xcodeproj/project.pbxproj b/Kingfisher.xcodeproj/project.pbxproj index e09a8b112..0a1feb8d7 100644 --- a/Kingfisher.xcodeproj/project.pbxproj +++ b/Kingfisher.xcodeproj/project.pbxproj @@ -2602,11 +2602,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CODE_SIGN_IDENTITY = ""; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1088; + CURRENT_PROJECT_VERSION = 1092; DEBUG_INFORMATION_FORMAT = dwarf; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1088; + DYLIB_CURRENT_VERSION = 1092; DYLIB_INSTALL_NAME_BASE = "@rpath"; FRAMEWORK_VERSION = A; GCC_NO_COMMON_BLOCKS = YES; @@ -2630,11 +2630,11 @@ APPLICATION_EXTENSION_API_ONLY = YES; CODE_SIGN_IDENTITY = ""; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 1088; + CURRENT_PROJECT_VERSION = 1092; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1088; + DYLIB_CURRENT_VERSION = 1092; DYLIB_INSTALL_NAME_BASE = "@rpath"; FRAMEWORK_VERSION = A; GCC_NO_COMMON_BLOCKS = YES; @@ -2806,11 +2806,11 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - CURRENT_PROJECT_VERSION = 1088; + CURRENT_PROJECT_VERSION = 1092; DEBUG_INFORMATION_FORMAT = dwarf; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1088; + DYLIB_CURRENT_VERSION = 1092; DYLIB_INSTALL_NAME_BASE = "@rpath"; GCC_NO_COMMON_BLOCKS = YES; INFOPLIST_FILE = Sources/Info.plist; @@ -2835,11 +2835,11 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - CURRENT_PROJECT_VERSION = 1088; + CURRENT_PROJECT_VERSION = 1092; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1088; + DYLIB_CURRENT_VERSION = 1092; DYLIB_INSTALL_NAME_BASE = "@rpath"; GCC_NO_COMMON_BLOCKS = YES; INFOPLIST_FILE = Sources/Info.plist; @@ -2862,11 +2862,11 @@ buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1088; + CURRENT_PROJECT_VERSION = 1092; DEBUG_INFORMATION_FORMAT = dwarf; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1088; + DYLIB_CURRENT_VERSION = 1092; DYLIB_INSTALL_NAME_BASE = "@rpath"; GCC_NO_COMMON_BLOCKS = YES; INFOPLIST_FILE = Sources/Info.plist; @@ -2888,11 +2888,11 @@ buildSettings = { APPLICATION_EXTENSION_API_ONLY = YES; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1088; + CURRENT_PROJECT_VERSION = 1092; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1088; + DYLIB_CURRENT_VERSION = 1092; DYLIB_INSTALL_NAME_BASE = "@rpath"; GCC_NO_COMMON_BLOCKS = YES; INFOPLIST_FILE = Sources/Info.plist; @@ -3108,10 +3108,10 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - CURRENT_PROJECT_VERSION = 1088; + CURRENT_PROJECT_VERSION = 1092; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1088; + DYLIB_CURRENT_VERSION = 1092; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = Sources/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -3134,10 +3134,10 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - CURRENT_PROJECT_VERSION = 1088; + CURRENT_PROJECT_VERSION = 1092; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1088; + DYLIB_CURRENT_VERSION = 1092; DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = Sources/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; diff --git a/Sources/Info.plist b/Sources/Info.plist index d26e8dd90..c5bf30ef1 100644 --- a/Sources/Info.plist +++ b/Sources/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.10.3 + 3.10.4 CFBundleSignature ???? CFBundleVersion - 1088 + 1092 NSPrincipalClass diff --git a/Tests/KingfisherTests-macOS/Info.plist b/Tests/KingfisherTests-macOS/Info.plist index a6a32f27f..24cba4687 100644 --- a/Tests/KingfisherTests-macOS/Info.plist +++ b/Tests/KingfisherTests-macOS/Info.plist @@ -15,10 +15,10 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 3.10.3 + 3.10.4 CFBundleSignature ???? CFBundleVersion - 1088 + 1092 diff --git a/Tests/KingfisherTests-tvOS/Info.plist b/Tests/KingfisherTests-tvOS/Info.plist index a6a32f27f..24cba4687 100644 --- a/Tests/KingfisherTests-tvOS/Info.plist +++ b/Tests/KingfisherTests-tvOS/Info.plist @@ -15,10 +15,10 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 3.10.3 + 3.10.4 CFBundleSignature ???? CFBundleVersion - 1088 + 1092 diff --git a/Tests/KingfisherTests/Info.plist b/Tests/KingfisherTests/Info.plist index a6a32f27f..24cba4687 100644 --- a/Tests/KingfisherTests/Info.plist +++ b/Tests/KingfisherTests/Info.plist @@ -15,10 +15,10 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 3.10.3 + 3.10.4 CFBundleSignature ???? CFBundleVersion - 1088 + 1092 diff --git a/docs/Classes.html b/docs/Classes.html index eb0fb4af1..a7c06a0a9 100644 --- a/docs/Classes.html +++ b/docs/Classes.html @@ -121,6 +121,9 @@ + @@ -290,7 +293,7 @@

Classes

See more @@ -325,7 +328,7 @@

Declaration

@@ -363,7 +366,7 @@

Declaration

@@ -398,7 +401,7 @@

Declaration

@@ -434,7 +437,7 @@

Declaration

@@ -466,7 +469,7 @@

Declaration

@@ -502,7 +505,7 @@

Declaration

@@ -512,8 +515,8 @@

Declaration

diff --git a/docs/Classes/AnimatedImageView.html b/docs/Classes/AnimatedImageView.html index 8d90aba48..218adec0f 100644 --- a/docs/Classes/AnimatedImageView.html +++ b/docs/Classes/AnimatedImageView.html @@ -122,6 +122,9 @@ + @@ -311,7 +314,7 @@

Declaration

@@ -341,7 +344,7 @@

Declaration

@@ -371,7 +374,7 @@

Declaration

@@ -401,7 +404,7 @@

Declaration

@@ -442,7 +445,7 @@

Declaration

@@ -472,7 +475,7 @@

Declaration

@@ -502,7 +505,7 @@

Declaration

@@ -532,7 +535,7 @@

Declaration

@@ -562,7 +565,7 @@

Declaration

@@ -592,7 +595,7 @@

Declaration

@@ -622,7 +625,7 @@

Declaration

@@ -632,8 +635,8 @@

Declaration

diff --git a/docs/Classes/ImageCache.html b/docs/Classes/ImageCache.html index f33dba058..79f7495d2 100644 --- a/docs/Classes/ImageCache.html +++ b/docs/Classes/ImageCache.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

Declaration

@@ -340,7 +343,7 @@

Declaration

@@ -370,7 +373,7 @@

Declaration

@@ -402,7 +405,7 @@

Declaration

@@ -434,7 +437,7 @@

Declaration

@@ -464,7 +467,7 @@

Declaration

@@ -494,7 +497,7 @@

Declaration

@@ -524,7 +527,7 @@

Declaration

@@ -606,7 +609,7 @@

Return Value

The cache object.

@@ -737,7 +740,7 @@

Parameters

@@ -827,7 +830,7 @@

Parameters

@@ -919,7 +922,7 @@

Return Value

The retrieving task.

@@ -985,7 +988,7 @@

Return Value

The image object if it is cached, or nil if there is no such key in the cache.

@@ -1051,7 +1054,7 @@

Return Value

The image object if it is cached, or nil if there is no such key in the cache.

@@ -1092,7 +1095,7 @@

Declaration

@@ -1141,7 +1144,7 @@

Parameters

@@ -1190,7 +1193,7 @@

Parameters

@@ -1222,7 +1225,7 @@

Declaration

@@ -1264,7 +1267,7 @@

Declaration

@@ -1317,7 +1320,7 @@

Return Value

The check result.

@@ -1382,7 +1385,7 @@

Return Value

Corresponding hash.

@@ -1432,7 +1435,7 @@

Parameters

@@ -1472,7 +1475,7 @@

Declaration

@@ -1502,7 +1505,7 @@

Declaration

@@ -1512,8 +1515,8 @@

Declaration

diff --git a/docs/Classes/ImageCache/CacheCheckResult.html b/docs/Classes/ImageCache/CacheCheckResult.html index 25223e30d..2b514fe92 100644 --- a/docs/Classes/ImageCache/CacheCheckResult.html +++ b/docs/Classes/ImageCache/CacheCheckResult.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

Declaration

@@ -334,7 +337,7 @@

Declaration

@@ -344,8 +347,8 @@

Declaration

diff --git a/docs/Classes/ImageDownloader.html b/docs/Classes/ImageDownloader.html index 51b91198b..5bce3dd5b 100644 --- a/docs/Classes/ImageDownloader.html +++ b/docs/Classes/ImageDownloader.html @@ -122,6 +122,9 @@ + @@ -311,7 +314,7 @@

Declaration

@@ -343,7 +346,7 @@

Declaration

@@ -374,7 +377,7 @@

Declaration

@@ -404,7 +407,7 @@

Declaration

@@ -434,7 +437,7 @@

Declaration

@@ -465,7 +468,7 @@

Declaration

@@ -506,7 +509,7 @@

Declaration

@@ -559,7 +562,7 @@

Return Value

The downloader object.

@@ -664,7 +667,7 @@

Return Value

A downloading task. You could call cancel on it to stop the downloading process.

@@ -698,7 +701,7 @@

Declaration

@@ -708,8 +711,8 @@

Declaration

diff --git a/docs/Classes/ImagePrefetcher.html b/docs/Classes/ImagePrefetcher.html index de1e8ee1b..d29ffbe1b 100644 --- a/docs/Classes/ImagePrefetcher.html +++ b/docs/Classes/ImagePrefetcher.html @@ -122,6 +122,9 @@ + @@ -305,7 +308,7 @@

Declaration

@@ -408,7 +411,7 @@

Return Value

An ImagePrefetcher object.

@@ -511,7 +514,7 @@

Return Value

An ImagePrefetcher object.

@@ -543,7 +546,7 @@

Declaration

@@ -573,7 +576,7 @@

Declaration

@@ -583,8 +586,8 @@

Declaration

diff --git a/docs/Classes/Kingfisher.html b/docs/Classes/Kingfisher.html index 7744059ac..d06f7e782 100644 --- a/docs/Classes/Kingfisher.html +++ b/docs/Classes/Kingfisher.html @@ -122,6 +122,9 @@ + @@ -290,7 +293,7 @@

Kingfisher

@@ -312,7 +315,7 @@

Kingfisher

@@ -334,7 +337,7 @@

Kingfisher

-

Undocumented

+

Normalize the image. This method does nothing in OS X.

@@ -369,7 +372,7 @@

Return Value

The normalized image with orientation set to up and correct scale.

@@ -402,7 +405,7 @@

PNG

@@ -435,7 +438,7 @@

JPEG

@@ -468,7 +471,7 @@

GIF

@@ -563,7 +566,7 @@

Return Value

An image with round corner of self.

@@ -632,7 +635,7 @@

Return Value

An image with new size.

@@ -697,7 +700,7 @@

Return Value

An image with new size.

@@ -719,7 +722,7 @@

Return Value

@@ -776,7 +779,7 @@

Parameters

-

The blur radius should be used when creating blue.

+

The blur radius should be used when creating blur effect.

@@ -788,7 +791,7 @@

Return Value

An image with blur effect applied.

@@ -869,7 +872,7 @@

Return Value

An image with a color overlay applied.

@@ -933,7 +936,7 @@

Return Value

An image with a color tint applied.

@@ -1033,7 +1036,7 @@

Return Value

An image with color control applied.

@@ -1059,7 +1062,7 @@

Return Value

@@ -1121,7 +1124,7 @@

Return Value

A transformed image by input Filter.

@@ -1147,7 +1150,7 @@

Return Value

@@ -1265,7 +1268,7 @@

Return Value

A task represents the retrieving process.

@@ -1296,7 +1299,7 @@

Declaration

@@ -1330,7 +1333,7 @@

Declaration

@@ -1361,7 +1364,7 @@

Declaration

@@ -1393,7 +1396,7 @@

Declaration

@@ -1525,7 +1528,7 @@

Return Value

A task represents the retrieving process.

@@ -1556,7 +1559,7 @@

Declaration

@@ -1684,7 +1687,7 @@

Return Value

A task represents the retrieving process.

@@ -1715,7 +1718,7 @@

Declaration

@@ -1772,7 +1775,7 @@

Return Value

Current URL for image.

@@ -1829,7 +1832,7 @@

Return Value

Current URL for background image.

@@ -1839,8 +1842,8 @@

Return Value

diff --git a/docs/Classes/KingfisherManager.html b/docs/Classes/KingfisherManager.html index 864a30229..1673dc356 100644 --- a/docs/Classes/KingfisherManager.html +++ b/docs/Classes/KingfisherManager.html @@ -122,6 +122,9 @@ + @@ -305,7 +308,7 @@

Declaration

@@ -335,7 +338,7 @@

Declaration

@@ -365,7 +368,7 @@

Declaration

@@ -404,7 +407,7 @@

Declaration

@@ -499,7 +502,7 @@

Return Value

A RetrieveImageTask task object. You can use this object to cancel the task.

@@ -509,8 +512,8 @@

Return Value

diff --git a/docs/Classes/RetrieveImageTask.html b/docs/Classes/RetrieveImageTask.html index 8084d9da3..5b5077cce 100644 --- a/docs/Classes/RetrieveImageTask.html +++ b/docs/Classes/RetrieveImageTask.html @@ -122,6 +122,9 @@ + @@ -305,7 +308,7 @@

Declaration

@@ -335,7 +338,7 @@

Declaration

@@ -365,7 +368,7 @@

Declaration

@@ -395,7 +398,7 @@

Declaration

@@ -405,8 +408,8 @@

Declaration

diff --git a/docs/Enums.html b/docs/Enums.html index 41fe5cd6f..a9140ca43 100644 --- a/docs/Enums.html +++ b/docs/Enums.html @@ -121,6 +121,9 @@ + @@ -304,7 +307,7 @@

Declaration

@@ -339,7 +342,7 @@

Declaration

@@ -379,7 +382,7 @@

Declaration

@@ -416,7 +419,7 @@

Declaration

@@ -443,7 +446,7 @@

Declaration

See more @@ -465,7 +468,7 @@

Declaration

-

Undocumented

+

Image transition is not supported on macOS.

See more
@@ -504,7 +507,7 @@

Declaration

@@ -539,7 +542,7 @@

Declaration

@@ -549,8 +552,8 @@

Declaration

diff --git a/docs/Enums/CacheType.html b/docs/Enums/CacheType.html index 72480c66f..f75b3d5b9 100644 --- a/docs/Enums/CacheType.html +++ b/docs/Enums/CacheType.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

Declaration

@@ -340,7 +343,7 @@

Declaration

@@ -370,7 +373,7 @@

Declaration

@@ -380,8 +383,8 @@

Declaration

diff --git a/docs/Enums/ContentMode.html b/docs/Enums/ContentMode.html index 6f4fb940f..6e8ad26b6 100644 --- a/docs/Enums/ContentMode.html +++ b/docs/Enums/ContentMode.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

Declaration

@@ -344,7 +347,7 @@

Declaration

@@ -378,7 +381,7 @@

Declaration

@@ -388,8 +391,8 @@

Declaration

diff --git a/docs/Enums/ImageProcessItem.html b/docs/Enums/ImageProcessItem.html index 430036a5a..6a4a2b140 100644 --- a/docs/Enums/ImageProcessItem.html +++ b/docs/Enums/ImageProcessItem.html @@ -122,6 +122,9 @@ + @@ -309,7 +312,7 @@

Declaration

@@ -343,7 +346,7 @@

Declaration

@@ -353,8 +356,8 @@

Declaration

diff --git a/docs/Enums/ImageTransition.html b/docs/Enums/ImageTransition.html index 057a3e367..77eb82583 100644 --- a/docs/Enums/ImageTransition.html +++ b/docs/Enums/ImageTransition.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

Declaration

@@ -344,7 +347,7 @@

Declaration

@@ -378,7 +381,7 @@

Declaration

@@ -412,7 +415,7 @@

Declaration

@@ -446,7 +449,7 @@

Declaration

@@ -480,7 +483,7 @@

Declaration

@@ -514,7 +517,7 @@

Declaration

@@ -524,8 +527,8 @@

Declaration

diff --git a/docs/Enums/IndicatorType.html b/docs/Enums/IndicatorType.html index 58decf0de..9f873b1ac 100644 --- a/docs/Enums/IndicatorType.html +++ b/docs/Enums/IndicatorType.html @@ -122,6 +122,9 @@ + @@ -298,7 +301,7 @@

Declaration

@@ -332,7 +335,7 @@

Declaration

@@ -366,7 +369,7 @@

Declaration

@@ -400,7 +403,7 @@

Declaration

@@ -410,8 +413,8 @@

Declaration

diff --git a/docs/Enums/KingfisherError.html b/docs/Enums/KingfisherError.html index c0c78f4f8..c324a6b9b 100644 --- a/docs/Enums/KingfisherError.html +++ b/docs/Enums/KingfisherError.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

Declaration

@@ -338,7 +341,7 @@

Declaration

@@ -374,7 +377,7 @@

Declaration

@@ -408,7 +411,7 @@

Declaration

@@ -442,7 +445,7 @@

Declaration

@@ -476,7 +479,7 @@

Declaration

@@ -486,8 +489,8 @@

Declaration

diff --git a/docs/Enums/KingfisherOptionsInfoItem.html b/docs/Enums/KingfisherOptionsInfoItem.html index 9c0727ce2..e34656cfe 100644 --- a/docs/Enums/KingfisherOptionsInfoItem.html +++ b/docs/Enums/KingfisherOptionsInfoItem.html @@ -122,6 +122,9 @@ + @@ -306,7 +309,7 @@

Declaration

@@ -341,7 +344,7 @@

Declaration

@@ -378,7 +381,7 @@

Declaration

@@ -413,7 +416,7 @@

Declaration

@@ -447,7 +450,7 @@

Declaration

@@ -482,7 +485,7 @@

Declaration

@@ -516,7 +519,7 @@

Declaration

@@ -550,7 +553,7 @@

Declaration

@@ -584,7 +587,7 @@

Declaration

@@ -619,7 +622,7 @@

Declaration

@@ -655,7 +658,7 @@

Declaration

@@ -693,7 +696,7 @@

Declaration

@@ -730,7 +733,7 @@

Declaration

@@ -767,7 +770,7 @@

Declaration

@@ -803,7 +806,7 @@

Declaration

@@ -839,7 +842,7 @@

Declaration

@@ -876,7 +879,7 @@

Declaration

@@ -913,7 +916,7 @@

Declaration

@@ -947,7 +950,7 @@

Declaration

@@ -957,8 +960,8 @@

Declaration

diff --git a/docs/Extensions.html b/docs/Extensions.html index 6782df6c8..8b870fa04 100644 --- a/docs/Extensions.html +++ b/docs/Extensions.html @@ -121,6 +121,9 @@ + @@ -292,8 +295,7 @@

Misc Helpers

-

Undocumented

- + See more
@@ -312,8 +314,7 @@

Misc Helpers

-

Undocumented

- + See more
@@ -348,7 +349,7 @@

Deprecated. Only for back compatibility.

See more @@ -360,9 +361,9 @@

Deprecated. Only for back compatibility.

  • - + - Notification + Notification
    @@ -373,14 +374,6 @@

    Deprecated. Only for back compatibility.

    See more
    -
    -

    Declaration

    -
    -

    Swift

    -
    struct Notification : ReferenceConvertible, Equatable, Hashable
    - -
    -
  • @@ -413,7 +406,7 @@

    Deprecated. Only for back compatibility.

    See more @@ -538,7 +531,7 @@

    Deprecated. Only for back compatibility.

    -

    Undocumented

    +

    Set image to use from web for a specified state. Deprecated. Use kf namespacing instead.

    See more
    @@ -550,8 +543,8 @@

    Deprecated. Only for back compatibility.

    diff --git a/docs/Extensions/CGSize.html b/docs/Extensions/CGSize.html index 635ebf395..30bf5b878 100644 --- a/docs/Extensions/CGSize.html +++ b/docs/Extensions/CGSize.html @@ -122,6 +122,9 @@ + @@ -267,8 +270,7 @@

    CGSize

    -

    Undocumented

    - +
    @@ -290,7 +292,7 @@

    CGSize

    @@ -300,8 +302,8 @@

    CGSize

    diff --git a/docs/Extensions/Collection.html b/docs/Extensions/Collection.html index 58ecddaf8..b93bc5678 100644 --- a/docs/Extensions/Collection.html +++ b/docs/Extensions/Collection.html @@ -122,6 +122,9 @@ + @@ -303,7 +306,7 @@

    Declaration

    @@ -333,7 +336,7 @@

    Declaration

    @@ -363,7 +366,7 @@

    Declaration

    @@ -394,7 +397,7 @@

    Declaration

    @@ -424,7 +427,7 @@

    Declaration

    @@ -454,7 +457,7 @@

    Declaration

    @@ -484,7 +487,7 @@

    Declaration

    @@ -514,7 +517,7 @@

    Declaration

    @@ -544,7 +547,7 @@

    Declaration

    @@ -574,7 +577,7 @@

    Declaration

    @@ -604,7 +607,7 @@

    Declaration

    @@ -634,7 +637,7 @@

    Declaration

    @@ -664,7 +667,7 @@

    Declaration

    @@ -694,7 +697,7 @@

    Declaration

    @@ -724,7 +727,7 @@

    Declaration

    @@ -755,7 +758,7 @@

    Declaration

    @@ -785,7 +788,7 @@

    Declaration

    @@ -815,7 +818,7 @@

    Declaration

    @@ -849,7 +852,7 @@

    Declaration

    @@ -859,8 +862,8 @@

    Declaration

    diff --git a/docs/Extensions/Data.html b/docs/Extensions/Data.html index 2612dad5e..19de71739 100644 --- a/docs/Extensions/Data.html +++ b/docs/Extensions/Data.html @@ -122,6 +122,9 @@ + @@ -267,8 +270,7 @@

    Data

    -

    Undocumented

    - +
    @@ -290,7 +292,7 @@

    Data

    @@ -300,8 +302,8 @@

    Data

    diff --git a/docs/Extensions/Image.html b/docs/Extensions/Image.html index 01a8bb866..596b764dc 100644 --- a/docs/Extensions/Image.html +++ b/docs/Extensions/Image.html @@ -122,6 +122,9 @@ + @@ -302,7 +305,7 @@

    Return Value

    The image itself.

    @@ -395,7 +398,7 @@

    Return Value

    An image with round corner of self.

    @@ -464,7 +467,7 @@

    Return Value

    An image with new size.

    @@ -533,7 +536,7 @@

    Return Value

    An image with blur effect applied.

    @@ -614,7 +617,7 @@

    Return Value

    An image with a color overlay applied.

    @@ -678,7 +681,7 @@

    Return Value

    An image with a color tint applied.

    @@ -778,7 +781,7 @@

    Return Value

    An image with color control applied.

    @@ -840,7 +843,7 @@

    Return Value

    A transformed image by input Filter.

    @@ -850,8 +853,8 @@

    Return Value

    diff --git a/docs/Extensions/ImageView.html b/docs/Extensions/ImageView.html index 8dd1ac506..3d83672f1 100644 --- a/docs/Extensions/ImageView.html +++ b/docs/Extensions/ImageView.html @@ -122,6 +122,9 @@ + @@ -379,7 +382,7 @@

    Return Value

    A task represents the retrieving process.

    @@ -410,7 +413,7 @@

    Declaration

    @@ -440,7 +443,7 @@

    Declaration

    @@ -471,7 +474,7 @@

    Declaration

    @@ -493,7 +496,7 @@

    Declaration

    @@ -503,8 +506,8 @@

    Declaration

    diff --git a/docs/Extensions/Notification.html b/docs/Extensions/Notification.html index 7f2462381..a8eb86cea 100644 --- a/docs/Extensions/Notification.html +++ b/docs/Extensions/Notification.html @@ -122,6 +122,9 @@ + @@ -267,12 +270,6 @@

    Notification

    -
    -
    -
    struct Notification : ReferenceConvertible, Equatable, Hashable
    - -
    -
    @@ -281,9 +278,9 @@

    Notification

  • @@ -291,25 +288,8 @@

    Notification

    -

    This notification will be sent when the disk cache got cleaned either there are cached files expired or the total size exceeding the max allowed size. The manually invoking of clearDiskCache method will not trigger this notification.

    - -

    The object of this notification is the ImageCache object which sends the notification.

    - -

    A list of removed hashes (files) could be retrieved by accessing the array under KingfisherDiskCacheCleanedHashKey key in userInfo of the notification object you received. By checking the array, you could know the hash codes of files are removed.

    - -

    The main purpose of this notification is supplying a chance to maintain some necessary information on the cached files. See this wiki for a use case on it.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public static var KingfisherDidCleanDiskCache = Notification.Name.init("com.onevcat.Kingfisher.KingfisherDidCleanDiskCache")
    - -
    -
    -
    @@ -319,8 +299,8 @@

    Declaration

  • diff --git a/docs/Extensions/Notification/Name.html b/docs/Extensions/Notification/Name.html new file mode 100644 index 000000000..5d20d36bf --- /dev/null +++ b/docs/Extensions/Notification/Name.html @@ -0,0 +1,326 @@ + + + + Name Extension Reference + + + + + + + + + + +
    + +
    +
    + +
    +
    + +
    +
    +
    +

    Name

    + +
    +
    +
    +
      +
    • + +
      +
      +
      +
      +
      +

      This notification will be sent when the disk cache got cleaned either there are cached files expired or the total size exceeding the max allowed size. The manually invoking of clearDiskCache method will not trigger this notification.

      + +

      The object of this notification is the ImageCache object which sends the notification.

      + +

      A list of removed hashes (files) could be retrieved by accessing the array under KingfisherDiskCacheCleanedHashKey key in userInfo of the notification object you received. By checking the array, you could know the hash codes of files are removed.

      + +

      The main purpose of this notification is supplying a chance to maintain some necessary information on the cached files. See this wiki for a use case on it.

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public static var KingfisherDidCleanDiskCache = Notification.Name.init("com.onevcat.Kingfisher.KingfisherDidCleanDiskCache")
      + +
      +
      + +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + diff --git a/docs/Extensions/String.html b/docs/Extensions/String.html index 8291157c3..f5d878e38 100644 --- a/docs/Extensions/String.html +++ b/docs/Extensions/String.html @@ -122,6 +122,9 @@ + @@ -303,7 +306,7 @@

    Declaration

    @@ -313,8 +316,8 @@

    Declaration

    diff --git a/docs/Extensions/UIButton.html b/docs/Extensions/UIButton.html index 80d3dcd48..b47b7f07c 100644 --- a/docs/Extensions/UIButton.html +++ b/docs/Extensions/UIButton.html @@ -122,6 +122,9 @@ + @@ -267,7 +270,7 @@

    UIButton

    -

    Undocumented

    +

    Set image to use from web for a specified state. Deprecated. Use kf namespacing instead.

    @@ -393,7 +396,7 @@

    Return Value

    A task represents the retrieving process.

    @@ -424,7 +427,7 @@

    Declaration

    @@ -549,7 +552,7 @@

    Return Value

    A task represents the retrieving process.

    @@ -580,7 +583,7 @@

    Declaration

    @@ -633,7 +636,7 @@

    Return Value

    Current URL for image.

    @@ -686,7 +689,7 @@

    Return Value

    Current URL for background image.

    @@ -696,8 +699,8 @@

    Return Value

    diff --git a/docs/Extensions/URL.html b/docs/Extensions/URL.html index eba8d57fe..087302c0a 100644 --- a/docs/Extensions/URL.html +++ b/docs/Extensions/URL.html @@ -122,6 +122,9 @@ + @@ -305,7 +308,7 @@

    Declaration

    @@ -334,7 +337,7 @@

    Declaration

    @@ -344,8 +347,8 @@

    Declaration

    diff --git a/docs/Functions.html b/docs/Functions.html index 95693758c..8f505eb0b 100644 --- a/docs/Functions.html +++ b/docs/Functions.html @@ -121,6 +121,9 @@ + @@ -332,7 +335,7 @@

    Return Value

    The concatenated processor.

    @@ -342,8 +345,8 @@

    Return Value

    diff --git a/docs/Global Variables.html b/docs/Global Variables.html index 7221492e8..c8f07c728 100644 --- a/docs/Global Variables.html +++ b/docs/Global Variables.html @@ -121,6 +121,9 @@ + @@ -297,7 +300,7 @@

    Declaration

    @@ -331,7 +334,7 @@

    Declaration

    @@ -365,7 +368,7 @@

    Declaration

    @@ -375,8 +378,8 @@

    Declaration

    diff --git a/docs/Protocols.html b/docs/Protocols.html index 92ead9999..f79823b55 100644 --- a/docs/Protocols.html +++ b/docs/Protocols.html @@ -121,6 +121,9 @@ + @@ -298,7 +301,7 @@

    Declaration

    @@ -333,7 +336,7 @@

    Declaration

    @@ -368,7 +371,7 @@

    Declaration

    @@ -403,7 +406,7 @@

    Declaration

    @@ -434,7 +437,7 @@

    Declaration

    @@ -469,7 +472,7 @@

    Declaration

    @@ -503,7 +506,7 @@

    Indicator Protocol

    See more @@ -538,7 +541,7 @@

    Declaration

    @@ -574,7 +577,7 @@

    Declaration

    @@ -584,8 +587,8 @@

    Declaration

    diff --git a/docs/Protocols/AuthenticationChallengeResponsable.html b/docs/Protocols/AuthenticationChallengeResponsable.html index 829709f04..ed559bf82 100644 --- a/docs/Protocols/AuthenticationChallengeResponsable.html +++ b/docs/Protocols/AuthenticationChallengeResponsable.html @@ -122,6 +122,9 @@ + @@ -353,7 +356,7 @@

    Parameters

    @@ -363,8 +366,8 @@

    Parameters

    diff --git a/docs/Protocols/CIImageProcessor.html b/docs/Protocols/CIImageProcessor.html index 0d397ecc7..26e292a08 100644 --- a/docs/Protocols/CIImageProcessor.html +++ b/docs/Protocols/CIImageProcessor.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -371,7 +374,7 @@

    Parameters

    @@ -381,8 +384,8 @@

    Parameters

    diff --git a/docs/Protocols/CacheSerializer.html b/docs/Protocols/CacheSerializer.html index bd27c1822..a404e60a6 100644 --- a/docs/Protocols/CacheSerializer.html +++ b/docs/Protocols/CacheSerializer.html @@ -122,6 +122,9 @@ + @@ -344,7 +347,7 @@

    Return Value

    data could be serialized.

    @@ -410,7 +413,7 @@

    Return Value

    could be deserialized.

    @@ -420,8 +423,8 @@

    Return Value

    diff --git a/docs/Protocols/ImageDownloadRequestModifier.html b/docs/Protocols/ImageDownloadRequestModifier.html index 0a1d588c8..09515f253 100644 --- a/docs/Protocols/ImageDownloadRequestModifier.html +++ b/docs/Protocols/ImageDownloadRequestModifier.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -314,8 +317,8 @@

    Declaration

    diff --git a/docs/Protocols/ImageDownloaderDelegate.html b/docs/Protocols/ImageDownloaderDelegate.html index e89a273b3..d4a03c87a 100644 --- a/docs/Protocols/ImageDownloaderDelegate.html +++ b/docs/Protocols/ImageDownloaderDelegate.html @@ -122,6 +122,9 @@ + @@ -366,7 +369,7 @@

    Parameters

    @@ -446,7 +449,7 @@

    Parameters

    @@ -527,7 +530,7 @@

    Return Value

    Whether this HTTP status code is valid or not.

    @@ -537,8 +540,8 @@

    Return Value

    diff --git a/docs/Protocols/ImageProcessor.html b/docs/Protocols/ImageProcessor.html index 57c6f6604..1d3c849a3 100644 --- a/docs/Protocols/ImageProcessor.html +++ b/docs/Protocols/ImageProcessor.html @@ -122,6 +122,9 @@ + @@ -314,7 +317,7 @@

    Declaration

    @@ -392,7 +395,7 @@

    Return Value

    The processed image.

    @@ -454,7 +457,7 @@

    Return Value

    of the two processors concatenated.

    @@ -464,8 +467,8 @@

    Return Value

    diff --git a/docs/Protocols/Indicator.html b/docs/Protocols/Indicator.html index 571bdc957..2bdc34896 100644 --- a/docs/Protocols/Indicator.html +++ b/docs/Protocols/Indicator.html @@ -122,6 +122,9 @@ + @@ -290,7 +293,7 @@

    Indicator

    @@ -312,7 +315,7 @@

    Indicator

    @@ -339,11 +342,10 @@

    Indicator

    Default Implementation

    Undocumented

    -

    Undocumented

    @@ -365,7 +367,7 @@

    Default Implementation

    @@ -375,8 +377,8 @@

    Default Implementation

    diff --git a/docs/Protocols/KingfisherCompatible.html b/docs/Protocols/KingfisherCompatible.html index 5756cc7df..c6f0769ae 100644 --- a/docs/Protocols/KingfisherCompatible.html +++ b/docs/Protocols/KingfisherCompatible.html @@ -122,6 +122,9 @@ + @@ -312,7 +315,7 @@

    Declaration

    @@ -322,8 +325,8 @@

    Declaration

    diff --git a/docs/Protocols/Resource.html b/docs/Protocols/Resource.html index 8115a9c5d..29933afc1 100644 --- a/docs/Protocols/Resource.html +++ b/docs/Protocols/Resource.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -334,7 +337,7 @@

    Declaration

    @@ -344,8 +347,8 @@

    Declaration

    diff --git a/docs/Structs.html b/docs/Structs.html index 8df0314fd..b2560d98a 100644 --- a/docs/Structs.html +++ b/docs/Structs.html @@ -121,6 +121,9 @@ + @@ -296,7 +299,7 @@

    Misc Helpers

    @@ -318,7 +321,7 @@

    Misc Helpers

    @@ -345,7 +348,7 @@

    Misc Helpers

    See more @@ -380,7 +383,7 @@

    Declaration

    @@ -415,7 +418,7 @@

    Declaration

    @@ -452,7 +455,7 @@

    Declaration

    @@ -475,7 +478,7 @@

    Declaration

    See more @@ -507,7 +510,7 @@

    Declaration

    @@ -538,7 +541,7 @@

    Declaration

    @@ -570,7 +573,7 @@

    Declaration

    @@ -601,7 +604,7 @@

    Declaration

    @@ -632,7 +635,7 @@

    Declaration

    @@ -664,7 +667,7 @@

    Declaration

    @@ -696,7 +699,7 @@

    Declaration

    @@ -728,7 +731,7 @@

    Declaration

    @@ -766,7 +769,7 @@

    Declaration

    @@ -792,7 +795,7 @@

    Declaration

    @@ -829,7 +832,7 @@

    Declaration

    @@ -885,7 +888,7 @@

    Declaration

    @@ -895,8 +898,8 @@

    Declaration

    diff --git a/docs/Structs/AnyModifier.html b/docs/Structs/AnyModifier.html index 62b161886..a5c65df61 100644 --- a/docs/Structs/AnyModifier.html +++ b/docs/Structs/AnyModifier.html @@ -122,6 +122,9 @@ + @@ -290,7 +293,7 @@

    AnyModifier

    @@ -312,7 +315,7 @@

    AnyModifier

    @@ -322,8 +325,8 @@

    AnyModifier

    diff --git a/docs/Structs/BlackWhiteProcessor.html b/docs/Structs/BlackWhiteProcessor.html index 7199634fe..5acb933d6 100644 --- a/docs/Structs/BlackWhiteProcessor.html +++ b/docs/Structs/BlackWhiteProcessor.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -340,7 +343,7 @@

    Declaration

    @@ -410,7 +413,7 @@

    Return Value

    The processed image.

    @@ -420,8 +423,8 @@

    Return Value

    diff --git a/docs/Structs/BlurImageProcessor.html b/docs/Structs/BlurImageProcessor.html index e5c845f69..c99f06add 100644 --- a/docs/Structs/BlurImageProcessor.html +++ b/docs/Structs/BlurImageProcessor.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -340,7 +343,7 @@

    Declaration

    @@ -389,7 +392,7 @@

    Parameters

    @@ -459,7 +462,7 @@

    Return Value

    The processed image.

    @@ -469,8 +472,8 @@

    Return Value

    diff --git a/docs/Structs/ColorControlsProcessor.html b/docs/Structs/ColorControlsProcessor.html index 7090adb50..0f90021a0 100644 --- a/docs/Structs/ColorControlsProcessor.html +++ b/docs/Structs/ColorControlsProcessor.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -340,7 +343,7 @@

    Declaration

    @@ -370,7 +373,7 @@

    Declaration

    @@ -400,7 +403,7 @@

    Declaration

    @@ -430,7 +433,7 @@

    Declaration

    @@ -515,7 +518,7 @@

    Parameters

    @@ -585,7 +588,7 @@

    Return Value

    The processed image.

    @@ -595,8 +598,8 @@

    Return Value

    diff --git a/docs/Structs/CroppingImageProcessor.html b/docs/Structs/CroppingImageProcessor.html index 6ffcfc139..300a1b5ad 100644 --- a/docs/Structs/CroppingImageProcessor.html +++ b/docs/Structs/CroppingImageProcessor.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -340,7 +343,7 @@

    Declaration

    @@ -373,7 +376,7 @@

    Declaration

    @@ -454,7 +457,7 @@

    Parameters

    @@ -524,7 +527,7 @@

    Return Value

    The processed image.

    @@ -534,8 +537,8 @@

    Return Value

    diff --git a/docs/Structs/DefaultCacheSerializer.html b/docs/Structs/DefaultCacheSerializer.html index 21876625e..f8e8c8c3d 100644 --- a/docs/Structs/DefaultCacheSerializer.html +++ b/docs/Structs/DefaultCacheSerializer.html @@ -122,6 +122,9 @@ + @@ -306,7 +309,7 @@

    Declaration

    @@ -366,7 +369,7 @@

    Parameters

    @@ -426,7 +429,7 @@

    Parameters

    @@ -436,8 +439,8 @@

    Parameters

    diff --git a/docs/Structs/DefaultImageProcessor.html b/docs/Structs/DefaultImageProcessor.html index aeb105ff4..82380b00b 100644 --- a/docs/Structs/DefaultImageProcessor.html +++ b/docs/Structs/DefaultImageProcessor.html @@ -122,6 +122,9 @@ + @@ -306,7 +309,7 @@

    Declaration

    @@ -341,7 +344,7 @@

    Declaration

    @@ -371,7 +374,7 @@

    Declaration

    @@ -441,7 +444,7 @@

    Return Value

    The processed image.

    @@ -451,8 +454,8 @@

    Return Value

    diff --git a/docs/Structs/Filter.html b/docs/Structs/Filter.html index c8bf0c718..bd8603fab 100644 --- a/docs/Structs/Filter.html +++ b/docs/Structs/Filter.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -334,7 +337,7 @@

    Declaration

    @@ -364,7 +367,7 @@

    Declaration

    @@ -374,8 +377,8 @@

    Declaration

    diff --git a/docs/Structs/FormatIndicatedCacheSerializer.html b/docs/Structs/FormatIndicatedCacheSerializer.html index acbfb06bf..2507b786a 100644 --- a/docs/Structs/FormatIndicatedCacheSerializer.html +++ b/docs/Structs/FormatIndicatedCacheSerializer.html @@ -122,6 +122,9 @@ + @@ -325,7 +328,7 @@

    Declaration

    @@ -355,7 +358,7 @@

    Declaration

    @@ -385,7 +388,7 @@

    Declaration

    @@ -445,7 +448,7 @@

    Parameters

    @@ -475,7 +478,7 @@

    Declaration

    @@ -485,8 +488,8 @@

    Declaration

    diff --git a/docs/Structs/ImageResource.html b/docs/Structs/ImageResource.html index 74907b0e5..789455065 100644 --- a/docs/Structs/ImageResource.html +++ b/docs/Structs/ImageResource.html @@ -122,6 +122,9 @@ + @@ -307,7 +310,7 @@

    Declaration

    @@ -337,7 +340,7 @@

    Declaration

    @@ -402,7 +405,7 @@

    Return Value

    A resource.

    @@ -412,8 +415,8 @@

    Return Value

    diff --git a/docs/Structs/OverlayImageProcessor.html b/docs/Structs/OverlayImageProcessor.html index db8953453..a7ce6c9b1 100644 --- a/docs/Structs/OverlayImageProcessor.html +++ b/docs/Structs/OverlayImageProcessor.html @@ -122,6 +122,9 @@ + @@ -309,7 +312,7 @@

    Declaration

    @@ -339,7 +342,7 @@

    Declaration

    @@ -369,7 +372,7 @@

    Declaration

    @@ -431,7 +434,7 @@

    Parameters

    @@ -501,7 +504,7 @@

    Return Value

    The processed image.

    @@ -511,8 +514,8 @@

    Return Value

    diff --git a/docs/Structs/RectCorner.html b/docs/Structs/RectCorner.html index bf9fb74eb..9e53dd549 100644 --- a/docs/Structs/RectCorner.html +++ b/docs/Structs/RectCorner.html @@ -122,6 +122,9 @@ + @@ -297,7 +300,7 @@

    Declaration

    @@ -319,7 +322,7 @@

    Declaration

    @@ -341,7 +344,7 @@

    Declaration

    @@ -363,7 +366,7 @@

    Declaration

    @@ -385,7 +388,7 @@

    Declaration

    @@ -407,7 +410,7 @@

    Declaration

    @@ -455,7 +458,7 @@

    Parameters

    @@ -465,8 +468,8 @@

    Parameters

    diff --git a/docs/Structs/ResizingImageProcessor.html b/docs/Structs/ResizingImageProcessor.html index 76354adf4..fbc6035fc 100644 --- a/docs/Structs/ResizingImageProcessor.html +++ b/docs/Structs/ResizingImageProcessor.html @@ -122,6 +122,9 @@ + @@ -309,7 +312,7 @@

    Declaration

    @@ -339,7 +342,7 @@

    Declaration

    @@ -370,7 +373,7 @@

    Declaration

    @@ -447,7 +450,7 @@

    Parameters

    @@ -517,7 +520,7 @@

    Return Value

    The processed image.

    @@ -551,7 +554,7 @@

    Declaration

    @@ -612,7 +615,7 @@

    Parameters

    @@ -622,8 +625,8 @@

    Parameters

    diff --git a/docs/Structs/RetrieveImageDownloadTask.html b/docs/Structs/RetrieveImageDownloadTask.html index cfd5a377d..adce3370c 100644 --- a/docs/Structs/RetrieveImageDownloadTask.html +++ b/docs/Structs/RetrieveImageDownloadTask.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -334,7 +337,7 @@

    Declaration

    @@ -364,7 +367,7 @@

    Declaration

    @@ -397,7 +400,7 @@

    Declaration

    @@ -407,8 +410,8 @@

    Declaration

    diff --git a/docs/Structs/RoundCornerImageProcessor.html b/docs/Structs/RoundCornerImageProcessor.html index 77ccfcb58..05da32970 100644 --- a/docs/Structs/RoundCornerImageProcessor.html +++ b/docs/Structs/RoundCornerImageProcessor.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -340,7 +343,7 @@

    Declaration

    @@ -370,7 +373,7 @@

    Declaration

    @@ -400,7 +403,7 @@

    Declaration

    @@ -475,7 +478,7 @@

    Parameters

    @@ -545,7 +548,7 @@

    Return Value

    The processed image.

    @@ -555,8 +558,8 @@

    Return Value

    diff --git a/docs/Structs/TintImageProcessor.html b/docs/Structs/TintImageProcessor.html index a7961cc64..73990ad1b 100644 --- a/docs/Structs/TintImageProcessor.html +++ b/docs/Structs/TintImageProcessor.html @@ -122,6 +122,9 @@ + @@ -309,7 +312,7 @@

    Declaration

    @@ -339,7 +342,7 @@

    Declaration

    @@ -388,7 +391,7 @@

    Parameters

    @@ -458,7 +461,7 @@

    Return Value

    The processed image.

    @@ -468,8 +471,8 @@

    Return Value

    diff --git a/docs/Typealiases.html b/docs/Typealiases.html index 6c0da3275..c8435d5ac 100644 --- a/docs/Typealiases.html +++ b/docs/Typealiases.html @@ -121,6 +121,9 @@ + @@ -297,7 +300,7 @@

    Declaration

    @@ -331,7 +334,7 @@

    Declaration

    @@ -365,7 +368,7 @@

    Declaration

    @@ -395,7 +398,7 @@

    Declaration

    @@ -429,7 +432,7 @@

    Declaration

    @@ -469,7 +472,7 @@

    Declaration

    @@ -505,7 +508,7 @@

    Declaration

    @@ -515,8 +518,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes.html index eb0fb4af1..a7c06a0a9 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes.html @@ -121,6 +121,9 @@ + @@ -290,7 +293,7 @@

    Classes

    See more @@ -325,7 +328,7 @@

    Declaration

    @@ -363,7 +366,7 @@

    Declaration

    @@ -398,7 +401,7 @@

    Declaration

    @@ -434,7 +437,7 @@

    Declaration

    @@ -466,7 +469,7 @@

    Declaration

    @@ -502,7 +505,7 @@

    Declaration

    @@ -512,8 +515,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/AnimatedImageView.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/AnimatedImageView.html index 8d90aba48..218adec0f 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/AnimatedImageView.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/AnimatedImageView.html @@ -122,6 +122,9 @@ + @@ -311,7 +314,7 @@

    Declaration

    @@ -341,7 +344,7 @@

    Declaration

    @@ -371,7 +374,7 @@

    Declaration

    @@ -401,7 +404,7 @@

    Declaration

    @@ -442,7 +445,7 @@

    Declaration

    @@ -472,7 +475,7 @@

    Declaration

    @@ -502,7 +505,7 @@

    Declaration

    @@ -532,7 +535,7 @@

    Declaration

    @@ -562,7 +565,7 @@

    Declaration

    @@ -592,7 +595,7 @@

    Declaration

    @@ -622,7 +625,7 @@

    Declaration

    @@ -632,8 +635,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImageCache.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImageCache.html index f33dba058..79f7495d2 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImageCache.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImageCache.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -340,7 +343,7 @@

    Declaration

    @@ -370,7 +373,7 @@

    Declaration

    @@ -402,7 +405,7 @@

    Declaration

    @@ -434,7 +437,7 @@

    Declaration

    @@ -464,7 +467,7 @@

    Declaration

    @@ -494,7 +497,7 @@

    Declaration

    @@ -524,7 +527,7 @@

    Declaration

    @@ -606,7 +609,7 @@

    Return Value

    The cache object.

    @@ -737,7 +740,7 @@

    Parameters

    @@ -827,7 +830,7 @@

    Parameters

    @@ -919,7 +922,7 @@

    Return Value

    The retrieving task.

    @@ -985,7 +988,7 @@

    Return Value

    The image object if it is cached, or nil if there is no such key in the cache.

    @@ -1051,7 +1054,7 @@

    Return Value

    The image object if it is cached, or nil if there is no such key in the cache.

    @@ -1092,7 +1095,7 @@

    Declaration

    @@ -1141,7 +1144,7 @@

    Parameters

    @@ -1190,7 +1193,7 @@

    Parameters

    @@ -1222,7 +1225,7 @@

    Declaration

    @@ -1264,7 +1267,7 @@

    Declaration

    @@ -1317,7 +1320,7 @@

    Return Value

    The check result.

    @@ -1382,7 +1385,7 @@

    Return Value

    Corresponding hash.

    @@ -1432,7 +1435,7 @@

    Parameters

    @@ -1472,7 +1475,7 @@

    Declaration

    @@ -1502,7 +1505,7 @@

    Declaration

    @@ -1512,8 +1515,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImageCache/CacheCheckResult.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImageCache/CacheCheckResult.html index 25223e30d..2b514fe92 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImageCache/CacheCheckResult.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImageCache/CacheCheckResult.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -334,7 +337,7 @@

    Declaration

    @@ -344,8 +347,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImageDownloader.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImageDownloader.html index 51b91198b..5bce3dd5b 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImageDownloader.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImageDownloader.html @@ -122,6 +122,9 @@ + @@ -311,7 +314,7 @@

    Declaration

    @@ -343,7 +346,7 @@

    Declaration

    @@ -374,7 +377,7 @@

    Declaration

    @@ -404,7 +407,7 @@

    Declaration

    @@ -434,7 +437,7 @@

    Declaration

    @@ -465,7 +468,7 @@

    Declaration

    @@ -506,7 +509,7 @@

    Declaration

    @@ -559,7 +562,7 @@

    Return Value

    The downloader object.

    @@ -664,7 +667,7 @@

    Return Value

    A downloading task. You could call cancel on it to stop the downloading process.

    @@ -698,7 +701,7 @@

    Declaration

    @@ -708,8 +711,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImagePrefetcher.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImagePrefetcher.html index de1e8ee1b..d29ffbe1b 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImagePrefetcher.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/ImagePrefetcher.html @@ -122,6 +122,9 @@ + @@ -305,7 +308,7 @@

    Declaration

    @@ -408,7 +411,7 @@

    Return Value

    An ImagePrefetcher object.

    @@ -511,7 +514,7 @@

    Return Value

    An ImagePrefetcher object.

    @@ -543,7 +546,7 @@

    Declaration

    @@ -573,7 +576,7 @@

    Declaration

    @@ -583,8 +586,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/Kingfisher.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/Kingfisher.html index 7744059ac..d06f7e782 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/Kingfisher.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/Kingfisher.html @@ -122,6 +122,9 @@ + @@ -290,7 +293,7 @@

    Kingfisher

    @@ -312,7 +315,7 @@

    Kingfisher

    @@ -334,7 +337,7 @@

    Kingfisher

    -

    Undocumented

    +

    Normalize the image. This method does nothing in OS X.

    @@ -369,7 +372,7 @@

    Return Value

    The normalized image with orientation set to up and correct scale.

    @@ -402,7 +405,7 @@

    PNG

    @@ -435,7 +438,7 @@

    JPEG

    @@ -468,7 +471,7 @@

    GIF

    @@ -563,7 +566,7 @@

    Return Value

    An image with round corner of self.

    @@ -632,7 +635,7 @@

    Return Value

    An image with new size.

    @@ -697,7 +700,7 @@

    Return Value

    An image with new size.

    @@ -719,7 +722,7 @@

    Return Value

    @@ -776,7 +779,7 @@

    Parameters

    -

    The blur radius should be used when creating blue.

    +

    The blur radius should be used when creating blur effect.

    @@ -788,7 +791,7 @@

    Return Value

    An image with blur effect applied.

    @@ -869,7 +872,7 @@

    Return Value

    An image with a color overlay applied.

    @@ -933,7 +936,7 @@

    Return Value

    An image with a color tint applied.

    @@ -1033,7 +1036,7 @@

    Return Value

    An image with color control applied.

    @@ -1059,7 +1062,7 @@

    Return Value

    @@ -1121,7 +1124,7 @@

    Return Value

    A transformed image by input Filter.

    @@ -1147,7 +1150,7 @@

    Return Value

    @@ -1265,7 +1268,7 @@

    Return Value

    A task represents the retrieving process.

    @@ -1296,7 +1299,7 @@

    Declaration

    @@ -1330,7 +1333,7 @@

    Declaration

    @@ -1361,7 +1364,7 @@

    Declaration

    @@ -1393,7 +1396,7 @@

    Declaration

    @@ -1525,7 +1528,7 @@

    Return Value

    A task represents the retrieving process.

    @@ -1556,7 +1559,7 @@

    Declaration

    @@ -1684,7 +1687,7 @@

    Return Value

    A task represents the retrieving process.

    @@ -1715,7 +1718,7 @@

    Declaration

    @@ -1772,7 +1775,7 @@

    Return Value

    Current URL for image.

    @@ -1829,7 +1832,7 @@

    Return Value

    Current URL for background image.

    @@ -1839,8 +1842,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/KingfisherManager.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/KingfisherManager.html index 864a30229..1673dc356 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/KingfisherManager.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/KingfisherManager.html @@ -122,6 +122,9 @@ + @@ -305,7 +308,7 @@

    Declaration

    @@ -335,7 +338,7 @@

    Declaration

    @@ -365,7 +368,7 @@

    Declaration

    @@ -404,7 +407,7 @@

    Declaration

    @@ -499,7 +502,7 @@

    Return Value

    A RetrieveImageTask task object. You can use this object to cancel the task.

    @@ -509,8 +512,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/RetrieveImageTask.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/RetrieveImageTask.html index 8084d9da3..5b5077cce 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/RetrieveImageTask.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Classes/RetrieveImageTask.html @@ -122,6 +122,9 @@ + @@ -305,7 +308,7 @@

    Declaration

    @@ -335,7 +338,7 @@

    Declaration

    @@ -365,7 +368,7 @@

    Declaration

    @@ -395,7 +398,7 @@

    Declaration

    @@ -405,8 +408,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums.html index 41fe5cd6f..a9140ca43 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums.html @@ -121,6 +121,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -339,7 +342,7 @@

    Declaration

    @@ -379,7 +382,7 @@

    Declaration

    @@ -416,7 +419,7 @@

    Declaration

    @@ -443,7 +446,7 @@

    Declaration

    See more @@ -465,7 +468,7 @@

    Declaration

    -

    Undocumented

    +

    Image transition is not supported on macOS.

    See more
    @@ -504,7 +507,7 @@

    Declaration

    @@ -539,7 +542,7 @@

    Declaration

    @@ -549,8 +552,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/CacheType.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/CacheType.html index 72480c66f..f75b3d5b9 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/CacheType.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/CacheType.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -340,7 +343,7 @@

    Declaration

    @@ -370,7 +373,7 @@

    Declaration

    @@ -380,8 +383,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/ContentMode.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/ContentMode.html index 6f4fb940f..6e8ad26b6 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/ContentMode.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/ContentMode.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -344,7 +347,7 @@

    Declaration

    @@ -378,7 +381,7 @@

    Declaration

    @@ -388,8 +391,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/ImageProcessItem.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/ImageProcessItem.html index 430036a5a..6a4a2b140 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/ImageProcessItem.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/ImageProcessItem.html @@ -122,6 +122,9 @@ + @@ -309,7 +312,7 @@

    Declaration

    @@ -343,7 +346,7 @@

    Declaration

    @@ -353,8 +356,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/ImageTransition.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/ImageTransition.html index 057a3e367..77eb82583 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/ImageTransition.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/ImageTransition.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -344,7 +347,7 @@

    Declaration

    @@ -378,7 +381,7 @@

    Declaration

    @@ -412,7 +415,7 @@

    Declaration

    @@ -446,7 +449,7 @@

    Declaration

    @@ -480,7 +483,7 @@

    Declaration

    @@ -514,7 +517,7 @@

    Declaration

    @@ -524,8 +527,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/IndicatorType.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/IndicatorType.html index 58decf0de..9f873b1ac 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/IndicatorType.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/IndicatorType.html @@ -122,6 +122,9 @@ + @@ -298,7 +301,7 @@

    Declaration

    @@ -332,7 +335,7 @@

    Declaration

    @@ -366,7 +369,7 @@

    Declaration

    @@ -400,7 +403,7 @@

    Declaration

    @@ -410,8 +413,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/KingfisherError.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/KingfisherError.html index c0c78f4f8..c324a6b9b 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/KingfisherError.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/KingfisherError.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -338,7 +341,7 @@

    Declaration

    @@ -374,7 +377,7 @@

    Declaration

    @@ -408,7 +411,7 @@

    Declaration

    @@ -442,7 +445,7 @@

    Declaration

    @@ -476,7 +479,7 @@

    Declaration

    @@ -486,8 +489,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/KingfisherOptionsInfoItem.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/KingfisherOptionsInfoItem.html index 9c0727ce2..e34656cfe 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/KingfisherOptionsInfoItem.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Enums/KingfisherOptionsInfoItem.html @@ -122,6 +122,9 @@ + @@ -306,7 +309,7 @@

    Declaration

    @@ -341,7 +344,7 @@

    Declaration

    @@ -378,7 +381,7 @@

    Declaration

    @@ -413,7 +416,7 @@

    Declaration

    @@ -447,7 +450,7 @@

    Declaration

    @@ -482,7 +485,7 @@

    Declaration

    @@ -516,7 +519,7 @@

    Declaration

    @@ -550,7 +553,7 @@

    Declaration

    @@ -584,7 +587,7 @@

    Declaration

    @@ -619,7 +622,7 @@

    Declaration

    @@ -655,7 +658,7 @@

    Declaration

    @@ -693,7 +696,7 @@

    Declaration

    @@ -730,7 +733,7 @@

    Declaration

    @@ -767,7 +770,7 @@

    Declaration

    @@ -803,7 +806,7 @@

    Declaration

    @@ -839,7 +842,7 @@

    Declaration

    @@ -876,7 +879,7 @@

    Declaration

    @@ -913,7 +916,7 @@

    Declaration

    @@ -947,7 +950,7 @@

    Declaration

    @@ -957,8 +960,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions.html index 6782df6c8..8b870fa04 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions.html @@ -121,6 +121,9 @@ + @@ -292,8 +295,7 @@

    Misc Helpers

    -

    Undocumented

    - + See more
    @@ -312,8 +314,7 @@

    Misc Helpers

    -

    Undocumented

    - + See more
    @@ -348,7 +349,7 @@

    Deprecated. Only for back compatibility.

    See more @@ -360,9 +361,9 @@

    Deprecated. Only for back compatibility.

  • - + - Notification + Notification
    @@ -373,14 +374,6 @@

    Deprecated. Only for back compatibility.

    See more
    -
    -

    Declaration

    -
    -

    Swift

    -
    struct Notification : ReferenceConvertible, Equatable, Hashable
    - -
    -
  • @@ -413,7 +406,7 @@

    Deprecated. Only for back compatibility.

    See more @@ -538,7 +531,7 @@

    Deprecated. Only for back compatibility.

    -

    Undocumented

    +

    Set image to use from web for a specified state. Deprecated. Use kf namespacing instead.

    See more
    @@ -550,8 +543,8 @@

    Deprecated. Only for back compatibility.

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/CGSize.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/CGSize.html index 635ebf395..30bf5b878 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/CGSize.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/CGSize.html @@ -122,6 +122,9 @@ + @@ -267,8 +270,7 @@

    CGSize

    -

    Undocumented

    - +
    @@ -290,7 +292,7 @@

    CGSize

    @@ -300,8 +302,8 @@

    CGSize

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Collection.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Collection.html index 58ecddaf8..b93bc5678 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Collection.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Collection.html @@ -122,6 +122,9 @@ + @@ -303,7 +306,7 @@

    Declaration

    @@ -333,7 +336,7 @@

    Declaration

    @@ -363,7 +366,7 @@

    Declaration

    @@ -394,7 +397,7 @@

    Declaration

    @@ -424,7 +427,7 @@

    Declaration

    @@ -454,7 +457,7 @@

    Declaration

    @@ -484,7 +487,7 @@

    Declaration

    @@ -514,7 +517,7 @@

    Declaration

    @@ -544,7 +547,7 @@

    Declaration

    @@ -574,7 +577,7 @@

    Declaration

    @@ -604,7 +607,7 @@

    Declaration

    @@ -634,7 +637,7 @@

    Declaration

    @@ -664,7 +667,7 @@

    Declaration

    @@ -694,7 +697,7 @@

    Declaration

    @@ -724,7 +727,7 @@

    Declaration

    @@ -755,7 +758,7 @@

    Declaration

    @@ -785,7 +788,7 @@

    Declaration

    @@ -815,7 +818,7 @@

    Declaration

    @@ -849,7 +852,7 @@

    Declaration

    @@ -859,8 +862,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Data.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Data.html index 2612dad5e..19de71739 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Data.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Data.html @@ -122,6 +122,9 @@ + @@ -267,8 +270,7 @@

    Data

    -

    Undocumented

    - +
    @@ -290,7 +292,7 @@

    Data

    @@ -300,8 +302,8 @@

    Data

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Image.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Image.html index 01a8bb866..596b764dc 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Image.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Image.html @@ -122,6 +122,9 @@ + @@ -302,7 +305,7 @@

    Return Value

    The image itself.

    @@ -395,7 +398,7 @@

    Return Value

    An image with round corner of self.

    @@ -464,7 +467,7 @@

    Return Value

    An image with new size.

    @@ -533,7 +536,7 @@

    Return Value

    An image with blur effect applied.

    @@ -614,7 +617,7 @@

    Return Value

    An image with a color overlay applied.

    @@ -678,7 +681,7 @@

    Return Value

    An image with a color tint applied.

    @@ -778,7 +781,7 @@

    Return Value

    An image with color control applied.

    @@ -840,7 +843,7 @@

    Return Value

    A transformed image by input Filter.

    @@ -850,8 +853,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/ImageView.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/ImageView.html index 8dd1ac506..3d83672f1 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/ImageView.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/ImageView.html @@ -122,6 +122,9 @@ + @@ -379,7 +382,7 @@

    Return Value

    A task represents the retrieving process.

    @@ -410,7 +413,7 @@

    Declaration

    @@ -440,7 +443,7 @@

    Declaration

    @@ -471,7 +474,7 @@

    Declaration

    @@ -493,7 +496,7 @@

    Declaration

    @@ -503,8 +506,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Notification.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Notification.html index 7f2462381..a8eb86cea 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Notification.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Notification.html @@ -122,6 +122,9 @@ + @@ -267,12 +270,6 @@

    Notification

    -
    -
    -
    struct Notification : ReferenceConvertible, Equatable, Hashable
    - -
    -
    @@ -281,9 +278,9 @@

    Notification

  • @@ -291,25 +288,8 @@

    Notification

    -

    This notification will be sent when the disk cache got cleaned either there are cached files expired or the total size exceeding the max allowed size. The manually invoking of clearDiskCache method will not trigger this notification.

    - -

    The object of this notification is the ImageCache object which sends the notification.

    - -

    A list of removed hashes (files) could be retrieved by accessing the array under KingfisherDiskCacheCleanedHashKey key in userInfo of the notification object you received. By checking the array, you could know the hash codes of files are removed.

    - -

    The main purpose of this notification is supplying a chance to maintain some necessary information on the cached files. See this wiki for a use case on it.

    - -
    -
    -

    Declaration

    -
    -

    Swift

    -
    public static var KingfisherDidCleanDiskCache = Notification.Name.init("com.onevcat.Kingfisher.KingfisherDidCleanDiskCache")
    - -
    -
    -
    @@ -319,8 +299,8 @@

    Declaration

  • diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Notification/Name.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Notification/Name.html new file mode 100644 index 000000000..5d20d36bf --- /dev/null +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/Notification/Name.html @@ -0,0 +1,326 @@ + + + + Name Extension Reference + + + + + + + + + + +
    + +
    +
    + +
    +
    + +
    +
    +
    +

    Name

    + +
    +
    +
    +
      +
    • + +
      +
      +
      +
      +
      +

      This notification will be sent when the disk cache got cleaned either there are cached files expired or the total size exceeding the max allowed size. The manually invoking of clearDiskCache method will not trigger this notification.

      + +

      The object of this notification is the ImageCache object which sends the notification.

      + +

      A list of removed hashes (files) could be retrieved by accessing the array under KingfisherDiskCacheCleanedHashKey key in userInfo of the notification object you received. By checking the array, you could know the hash codes of files are removed.

      + +

      The main purpose of this notification is supplying a chance to maintain some necessary information on the cached files. See this wiki for a use case on it.

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public static var KingfisherDidCleanDiskCache = Notification.Name.init("com.onevcat.Kingfisher.KingfisherDidCleanDiskCache")
      + +
      +
      + +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/String.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/String.html index 8291157c3..f5d878e38 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/String.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/String.html @@ -122,6 +122,9 @@ + @@ -303,7 +306,7 @@

    Declaration

    @@ -313,8 +316,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/UIButton.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/UIButton.html index 80d3dcd48..b47b7f07c 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/UIButton.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/UIButton.html @@ -122,6 +122,9 @@ + @@ -267,7 +270,7 @@

    UIButton

    -

    Undocumented

    +

    Set image to use from web for a specified state. Deprecated. Use kf namespacing instead.

    @@ -393,7 +396,7 @@

    Return Value

    A task represents the retrieving process.

    @@ -424,7 +427,7 @@

    Declaration

    @@ -549,7 +552,7 @@

    Return Value

    A task represents the retrieving process.

    @@ -580,7 +583,7 @@

    Declaration

    @@ -633,7 +636,7 @@

    Return Value

    Current URL for image.

    @@ -686,7 +689,7 @@

    Return Value

    Current URL for background image.

    @@ -696,8 +699,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/URL.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/URL.html index eba8d57fe..087302c0a 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/URL.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Extensions/URL.html @@ -122,6 +122,9 @@ + @@ -305,7 +308,7 @@

    Declaration

    @@ -334,7 +337,7 @@

    Declaration

    @@ -344,8 +347,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Functions.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Functions.html index 95693758c..8f505eb0b 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Functions.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Functions.html @@ -121,6 +121,9 @@ + @@ -332,7 +335,7 @@

    Return Value

    The concatenated processor.

    @@ -342,8 +345,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Global Variables.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Global Variables.html index 7221492e8..c8f07c728 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Global Variables.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Global Variables.html @@ -121,6 +121,9 @@ + @@ -297,7 +300,7 @@

    Declaration

    @@ -331,7 +334,7 @@

    Declaration

    @@ -365,7 +368,7 @@

    Declaration

    @@ -375,8 +378,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols.html index 92ead9999..f79823b55 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols.html @@ -121,6 +121,9 @@ + @@ -298,7 +301,7 @@

    Declaration

    @@ -333,7 +336,7 @@

    Declaration

    @@ -368,7 +371,7 @@

    Declaration

    @@ -403,7 +406,7 @@

    Declaration

    @@ -434,7 +437,7 @@

    Declaration

    @@ -469,7 +472,7 @@

    Declaration

    @@ -503,7 +506,7 @@

    Indicator Protocol

    See more @@ -538,7 +541,7 @@

    Declaration

    @@ -574,7 +577,7 @@

    Declaration

    @@ -584,8 +587,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/AuthenticationChallengeResponsable.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/AuthenticationChallengeResponsable.html index 829709f04..ed559bf82 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/AuthenticationChallengeResponsable.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/AuthenticationChallengeResponsable.html @@ -122,6 +122,9 @@ + @@ -353,7 +356,7 @@

    Parameters

    @@ -363,8 +366,8 @@

    Parameters

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/CIImageProcessor.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/CIImageProcessor.html index 0d397ecc7..26e292a08 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/CIImageProcessor.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/CIImageProcessor.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -371,7 +374,7 @@

    Parameters

    @@ -381,8 +384,8 @@

    Parameters

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/CacheSerializer.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/CacheSerializer.html index bd27c1822..a404e60a6 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/CacheSerializer.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/CacheSerializer.html @@ -122,6 +122,9 @@ + @@ -344,7 +347,7 @@

    Return Value

    data could be serialized.

    @@ -410,7 +413,7 @@

    Return Value

    could be deserialized.

    @@ -420,8 +423,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/ImageDownloadRequestModifier.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/ImageDownloadRequestModifier.html index 0a1d588c8..09515f253 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/ImageDownloadRequestModifier.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/ImageDownloadRequestModifier.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -314,8 +317,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/ImageDownloaderDelegate.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/ImageDownloaderDelegate.html index e89a273b3..d4a03c87a 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/ImageDownloaderDelegate.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/ImageDownloaderDelegate.html @@ -122,6 +122,9 @@ + @@ -366,7 +369,7 @@

    Parameters

    @@ -446,7 +449,7 @@

    Parameters

    @@ -527,7 +530,7 @@

    Return Value

    Whether this HTTP status code is valid or not.

    @@ -537,8 +540,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/ImageProcessor.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/ImageProcessor.html index 57c6f6604..1d3c849a3 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/ImageProcessor.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/ImageProcessor.html @@ -122,6 +122,9 @@ + @@ -314,7 +317,7 @@

    Declaration

    @@ -392,7 +395,7 @@

    Return Value

    The processed image.

    @@ -454,7 +457,7 @@

    Return Value

    of the two processors concatenated.

    @@ -464,8 +467,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/Indicator.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/Indicator.html index 571bdc957..2bdc34896 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/Indicator.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/Indicator.html @@ -122,6 +122,9 @@ + @@ -290,7 +293,7 @@

    Indicator

    @@ -312,7 +315,7 @@

    Indicator

    @@ -339,11 +342,10 @@

    Indicator

    Default Implementation

    Undocumented

    -

    Undocumented

    @@ -365,7 +367,7 @@

    Default Implementation

    @@ -375,8 +377,8 @@

    Default Implementation

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/KingfisherCompatible.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/KingfisherCompatible.html index 5756cc7df..c6f0769ae 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/KingfisherCompatible.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/KingfisherCompatible.html @@ -122,6 +122,9 @@ + @@ -312,7 +315,7 @@

    Declaration

    @@ -322,8 +325,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/Resource.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/Resource.html index 8115a9c5d..29933afc1 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/Resource.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Protocols/Resource.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -334,7 +337,7 @@

    Declaration

    @@ -344,8 +347,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs.html index 8df0314fd..b2560d98a 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs.html @@ -121,6 +121,9 @@ + @@ -296,7 +299,7 @@

    Misc Helpers

    @@ -318,7 +321,7 @@

    Misc Helpers

    @@ -345,7 +348,7 @@

    Misc Helpers

    See more @@ -380,7 +383,7 @@

    Declaration

    @@ -415,7 +418,7 @@

    Declaration

    @@ -452,7 +455,7 @@

    Declaration

    @@ -475,7 +478,7 @@

    Declaration

    See more @@ -507,7 +510,7 @@

    Declaration

    @@ -538,7 +541,7 @@

    Declaration

    @@ -570,7 +573,7 @@

    Declaration

    @@ -601,7 +604,7 @@

    Declaration

    @@ -632,7 +635,7 @@

    Declaration

    @@ -664,7 +667,7 @@

    Declaration

    @@ -696,7 +699,7 @@

    Declaration

    @@ -728,7 +731,7 @@

    Declaration

    @@ -766,7 +769,7 @@

    Declaration

    @@ -792,7 +795,7 @@

    Declaration

    @@ -829,7 +832,7 @@

    Declaration

    @@ -885,7 +888,7 @@

    Declaration

    @@ -895,8 +898,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/AnyModifier.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/AnyModifier.html index 62b161886..a5c65df61 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/AnyModifier.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/AnyModifier.html @@ -122,6 +122,9 @@ + @@ -290,7 +293,7 @@

    AnyModifier

    @@ -312,7 +315,7 @@

    AnyModifier

    @@ -322,8 +325,8 @@

    AnyModifier

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/BlackWhiteProcessor.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/BlackWhiteProcessor.html index 7199634fe..5acb933d6 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/BlackWhiteProcessor.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/BlackWhiteProcessor.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -340,7 +343,7 @@

    Declaration

    @@ -410,7 +413,7 @@

    Return Value

    The processed image.

    @@ -420,8 +423,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/BlurImageProcessor.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/BlurImageProcessor.html index e5c845f69..c99f06add 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/BlurImageProcessor.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/BlurImageProcessor.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -340,7 +343,7 @@

    Declaration

    @@ -389,7 +392,7 @@

    Parameters

    @@ -459,7 +462,7 @@

    Return Value

    The processed image.

    @@ -469,8 +472,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/ColorControlsProcessor.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/ColorControlsProcessor.html index 7090adb50..0f90021a0 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/ColorControlsProcessor.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/ColorControlsProcessor.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -340,7 +343,7 @@

    Declaration

    @@ -370,7 +373,7 @@

    Declaration

    @@ -400,7 +403,7 @@

    Declaration

    @@ -430,7 +433,7 @@

    Declaration

    @@ -515,7 +518,7 @@

    Parameters

    @@ -585,7 +588,7 @@

    Return Value

    The processed image.

    @@ -595,8 +598,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/CroppingImageProcessor.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/CroppingImageProcessor.html index 6ffcfc139..300a1b5ad 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/CroppingImageProcessor.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/CroppingImageProcessor.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -340,7 +343,7 @@

    Declaration

    @@ -373,7 +376,7 @@

    Declaration

    @@ -454,7 +457,7 @@

    Parameters

    @@ -524,7 +527,7 @@

    Return Value

    The processed image.

    @@ -534,8 +537,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/DefaultCacheSerializer.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/DefaultCacheSerializer.html index 21876625e..f8e8c8c3d 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/DefaultCacheSerializer.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/DefaultCacheSerializer.html @@ -122,6 +122,9 @@ + @@ -306,7 +309,7 @@

    Declaration

    @@ -366,7 +369,7 @@

    Parameters

    @@ -426,7 +429,7 @@

    Parameters

    @@ -436,8 +439,8 @@

    Parameters

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/DefaultImageProcessor.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/DefaultImageProcessor.html index aeb105ff4..82380b00b 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/DefaultImageProcessor.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/DefaultImageProcessor.html @@ -122,6 +122,9 @@ + @@ -306,7 +309,7 @@

    Declaration

    @@ -341,7 +344,7 @@

    Declaration

    @@ -371,7 +374,7 @@

    Declaration

    @@ -441,7 +444,7 @@

    Return Value

    The processed image.

    @@ -451,8 +454,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/Filter.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/Filter.html index c8bf0c718..bd8603fab 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/Filter.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/Filter.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -334,7 +337,7 @@

    Declaration

    @@ -364,7 +367,7 @@

    Declaration

    @@ -374,8 +377,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/FormatIndicatedCacheSerializer.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/FormatIndicatedCacheSerializer.html index acbfb06bf..2507b786a 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/FormatIndicatedCacheSerializer.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/FormatIndicatedCacheSerializer.html @@ -122,6 +122,9 @@ + @@ -325,7 +328,7 @@

    Declaration

    @@ -355,7 +358,7 @@

    Declaration

    @@ -385,7 +388,7 @@

    Declaration

    @@ -445,7 +448,7 @@

    Parameters

    @@ -475,7 +478,7 @@

    Declaration

    @@ -485,8 +488,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/ImageResource.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/ImageResource.html index 74907b0e5..789455065 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/ImageResource.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/ImageResource.html @@ -122,6 +122,9 @@ + @@ -307,7 +310,7 @@

    Declaration

    @@ -337,7 +340,7 @@

    Declaration

    @@ -402,7 +405,7 @@

    Return Value

    A resource.

    @@ -412,8 +415,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/OverlayImageProcessor.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/OverlayImageProcessor.html index db8953453..a7ce6c9b1 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/OverlayImageProcessor.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/OverlayImageProcessor.html @@ -122,6 +122,9 @@ + @@ -309,7 +312,7 @@

    Declaration

    @@ -339,7 +342,7 @@

    Declaration

    @@ -369,7 +372,7 @@

    Declaration

    @@ -431,7 +434,7 @@

    Parameters

    @@ -501,7 +504,7 @@

    Return Value

    The processed image.

    @@ -511,8 +514,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/RectCorner.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/RectCorner.html index bf9fb74eb..9e53dd549 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/RectCorner.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/RectCorner.html @@ -122,6 +122,9 @@ + @@ -297,7 +300,7 @@

    Declaration

    @@ -319,7 +322,7 @@

    Declaration

    @@ -341,7 +344,7 @@

    Declaration

    @@ -363,7 +366,7 @@

    Declaration

    @@ -385,7 +388,7 @@

    Declaration

    @@ -407,7 +410,7 @@

    Declaration

    @@ -455,7 +458,7 @@

    Parameters

    @@ -465,8 +468,8 @@

    Parameters

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/ResizingImageProcessor.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/ResizingImageProcessor.html index 76354adf4..fbc6035fc 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/ResizingImageProcessor.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/ResizingImageProcessor.html @@ -122,6 +122,9 @@ + @@ -309,7 +312,7 @@

    Declaration

    @@ -339,7 +342,7 @@

    Declaration

    @@ -370,7 +373,7 @@

    Declaration

    @@ -447,7 +450,7 @@

    Parameters

    @@ -517,7 +520,7 @@

    Return Value

    The processed image.

    @@ -551,7 +554,7 @@

    Declaration

    @@ -612,7 +615,7 @@

    Parameters

    @@ -622,8 +625,8 @@

    Parameters

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/RetrieveImageDownloadTask.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/RetrieveImageDownloadTask.html index cfd5a377d..adce3370c 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/RetrieveImageDownloadTask.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/RetrieveImageDownloadTask.html @@ -122,6 +122,9 @@ + @@ -304,7 +307,7 @@

    Declaration

    @@ -334,7 +337,7 @@

    Declaration

    @@ -364,7 +367,7 @@

    Declaration

    @@ -397,7 +400,7 @@

    Declaration

    @@ -407,8 +410,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/RoundCornerImageProcessor.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/RoundCornerImageProcessor.html index 77ccfcb58..05da32970 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/RoundCornerImageProcessor.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/RoundCornerImageProcessor.html @@ -122,6 +122,9 @@ + @@ -310,7 +313,7 @@

    Declaration

    @@ -340,7 +343,7 @@

    Declaration

    @@ -370,7 +373,7 @@

    Declaration

    @@ -400,7 +403,7 @@

    Declaration

    @@ -475,7 +478,7 @@

    Parameters

    @@ -545,7 +548,7 @@

    Return Value

    The processed image.

    @@ -555,8 +558,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/TintImageProcessor.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/TintImageProcessor.html index a7961cc64..73990ad1b 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/TintImageProcessor.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Structs/TintImageProcessor.html @@ -122,6 +122,9 @@ + @@ -309,7 +312,7 @@

    Declaration

    @@ -339,7 +342,7 @@

    Declaration

    @@ -388,7 +391,7 @@

    Parameters

    @@ -458,7 +461,7 @@

    Return Value

    The processed image.

    @@ -468,8 +471,8 @@

    Return Value

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Typealiases.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Typealiases.html index 6c0da3275..c8435d5ac 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Typealiases.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/Typealiases.html @@ -121,6 +121,9 @@ + @@ -297,7 +300,7 @@

    Declaration

    @@ -331,7 +334,7 @@

    Declaration

    @@ -365,7 +368,7 @@

    Declaration

    @@ -395,7 +398,7 @@

    Declaration

    @@ -429,7 +432,7 @@

    Declaration

    @@ -469,7 +472,7 @@

    Declaration

    @@ -505,7 +508,7 @@

    Declaration

    @@ -515,8 +518,8 @@

    Declaration

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/index.html b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/index.html index 618119da6..d37d77b13 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/index.html +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/index.html @@ -121,6 +121,9 @@ + @@ -368,8 +371,8 @@

    License

    diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/search.json b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/search.json index 34d9f2c54..09bbb8e81 100644 --- a/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/search.json +++ b/docs/docsets/Kingfisher.docset/Contents/Resources/Documents/search.json @@ -1 +1 @@ -{"Typealiases.html#/s:10Kingfisher11Transformer":{"name":"Transformer","abstract":"

    Transformer method which will be used in to provide a Filter.

    "},"Typealiases.html#/s:10Kingfisher21RetrieveImageDiskTask":{"name":"RetrieveImageDiskTask","abstract":"

    It represents a task of retrieving image. You can call cancel on it to stop the process.

    "},"Typealiases.html#/s:10Kingfisher28ImageDownloaderProgressBlock":{"name":"ImageDownloaderProgressBlock","abstract":"

    Progress update block of downloader.

    "},"Typealiases.html#/s:10Kingfisher32ImageDownloaderCompletionHandler":{"name":"ImageDownloaderCompletionHandler","abstract":"

    Completion block of downloader.

    "},"Typealiases.html#/s:10Kingfisher21KingfisherOptionsInfo":{"name":"KingfisherOptionsInfo","abstract":"

    KingfisherOptionsInfo is a typealias for [KingfisherOptionsInfoItem]. You can use the enum of option item with value to control some behaviors of Kingfisher.

    "},"Typealiases.html#/s:10Kingfisher23PrefetcherProgressBlock":{"name":"PrefetcherProgressBlock","abstract":"

    Progress update block of prefetcher.

    "},"Typealiases.html#/s:10Kingfisher27PrefetcherCompletionHandler":{"name":"PrefetcherCompletionHandler","abstract":"

    Completion block of prefetcher.

    "},"Structs/FormatIndicatedCacheSerializer.html#/s:ZvV10Kingfisher30FormatIndicatedCacheSerializer3pngS0_":{"name":"png","abstract":"

    Undocumented

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:ZvV10Kingfisher30FormatIndicatedCacheSerializer4jpegS0_":{"name":"jpeg","abstract":"

    Undocumented

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:ZvV10Kingfisher30FormatIndicatedCacheSerializer3gifS0_":{"name":"gif","abstract":"

    Undocumented

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:FP10Kingfisher15CacheSerializer4dataFT4withCSo7UIImage8originalGSqV10Foundation4Data__GSqS3__":{"name":"data(with:original:)","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:FV10Kingfisher30FormatIndicatedCacheSerializer5imageFT4withV10Foundation4Data7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"image(with:options:)","abstract":"

    Same implementation as DefaultCacheSerializer.

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/DefaultCacheSerializer.html#/s:ZvV10Kingfisher22DefaultCacheSerializer7defaultS0_":{"name":"default","abstract":"

    Undocumented

    ","parent_name":"DefaultCacheSerializer"},"Structs/DefaultCacheSerializer.html#/s:FP10Kingfisher15CacheSerializer4dataFT4withCSo7UIImage8originalGSqV10Foundation4Data__GSqS3__":{"name":"data(with:original:)","parent_name":"DefaultCacheSerializer"},"Structs/DefaultCacheSerializer.html#/s:FP10Kingfisher15CacheSerializer5imageFT4withV10Foundation4Data7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"image(with:options:)","parent_name":"DefaultCacheSerializer"},"Structs/ImageResource.html#/s:vV10Kingfisher13ImageResource8cacheKeySS":{"name":"cacheKey","abstract":"

    The key used in cache.

    ","parent_name":"ImageResource"},"Structs/ImageResource.html#/s:vV10Kingfisher13ImageResource11downloadURLV10Foundation3URL":{"name":"downloadURL","abstract":"

    The target image URL.

    ","parent_name":"ImageResource"},"Structs/ImageResource.html#/s:FV10Kingfisher13ImageResourcecFT11downloadURLV10Foundation3URL8cacheKeyGSqSS__S0_":{"name":"init(downloadURL:cacheKey:)","abstract":"

    Create a resource.

    ","parent_name":"ImageResource"},"Structs/CroppingImageProcessor.html#/s:vV10Kingfisher22CroppingImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:vV10Kingfisher22CroppingImageProcessor4sizeVSC6CGSize":{"name":"size","abstract":"

    Target size of output image should be.

    ","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:vV10Kingfisher22CroppingImageProcessor6anchorVSC7CGPoint":{"name":"anchor","abstract":"

    Anchor point from which the output size should be calculate.","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:FV10Kingfisher22CroppingImageProcessorcFT4sizeVSC6CGSize6anchorVSC7CGPoint_S0_":{"name":"init(size:anchor:)","abstract":"

    Initialize a CroppingImageProcessor

    ","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:FV10Kingfisher22CroppingImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"CroppingImageProcessor"},"Structs/BlackWhiteProcessor.html#/s:vV10Kingfisher19BlackWhiteProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"BlackWhiteProcessor"},"Structs/BlackWhiteProcessor.html#/s:FV10Kingfisher19BlackWhiteProcessorcFT_S0_":{"name":"init()","abstract":"

    Initialize a BlackWhiteProcessor

    ","parent_name":"BlackWhiteProcessor"},"Structs/BlackWhiteProcessor.html#/s:FV10Kingfisher19BlackWhiteProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"BlackWhiteProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor10brightnessV12CoreGraphics7CGFloat":{"name":"brightness","abstract":"

    Brightness changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor8contrastV12CoreGraphics7CGFloat":{"name":"contrast","abstract":"

    Contrast changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor10saturationV12CoreGraphics7CGFloat":{"name":"saturation","abstract":"

    Saturation changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor7inputEVV12CoreGraphics7CGFloat":{"name":"inputEV","abstract":"

    InputEV changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:FV10Kingfisher22ColorControlsProcessorcFT10brightnessV12CoreGraphics7CGFloat8contrastS2_10saturationS2_7inputEVS2__S0_":{"name":"init(brightness:contrast:saturation:inputEV:)","abstract":"

    Initialize a ColorControlsProcessor

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:FV10Kingfisher22ColorControlsProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"ColorControlsProcessor"},"Structs/TintImageProcessor.html#/s:vV10Kingfisher18TintImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"TintImageProcessor"},"Structs/TintImageProcessor.html#/s:vV10Kingfisher18TintImageProcessor4tintCSo7UIColor":{"name":"tint","abstract":"

    Tint color will be used to tint the input image.

    ","parent_name":"TintImageProcessor"},"Structs/TintImageProcessor.html#/s:FV10Kingfisher18TintImageProcessorcFT4tintCSo7UIColor_S0_":{"name":"init(tint:)","abstract":"

    Initialize a TintImageProcessor

    ","parent_name":"TintImageProcessor"},"Structs/TintImageProcessor.html#/s:FV10Kingfisher18TintImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"TintImageProcessor"},"Structs/OverlayImageProcessor.html#/s:vV10Kingfisher21OverlayImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:vV10Kingfisher21OverlayImageProcessor7overlayCSo7UIColor":{"name":"overlay","abstract":"

    Overlay color will be used to overlay the input image.

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:vV10Kingfisher21OverlayImageProcessor8fractionV12CoreGraphics7CGFloat":{"name":"fraction","abstract":"

    Fraction will be used when overlay the color to image.

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:FV10Kingfisher21OverlayImageProcessorcFT7overlayCSo7UIColor8fractionV12CoreGraphics7CGFloat_S0_":{"name":"init(overlay:fraction:)","abstract":"

    Initialize an OverlayImageProcessor

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:FV10Kingfisher21OverlayImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"OverlayImageProcessor"},"Structs/BlurImageProcessor.html#/s:vV10Kingfisher18BlurImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"BlurImageProcessor"},"Structs/BlurImageProcessor.html#/s:vV10Kingfisher18BlurImageProcessor10blurRadiusV12CoreGraphics7CGFloat":{"name":"blurRadius","abstract":"

    Blur radius for the simulated Gaussian blur.

    ","parent_name":"BlurImageProcessor"},"Structs/BlurImageProcessor.html#/s:FV10Kingfisher18BlurImageProcessorcFT10blurRadiusV12CoreGraphics7CGFloat_S0_":{"name":"init(blurRadius:)","abstract":"

    Initialize a BlurImageProcessor

    ","parent_name":"BlurImageProcessor"},"Structs/BlurImageProcessor.html#/s:FV10Kingfisher18BlurImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"BlurImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor13referenceSizeVSC6CGSize":{"name":"referenceSize","abstract":"

    The reference size for resizing operation.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor17targetContentModeOS_11ContentMode":{"name":"targetContentMode","abstract":"

    Target content mode of output image should be.","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:FV10Kingfisher22ResizingImageProcessorcFT13referenceSizeVSC6CGSize4modeOS_11ContentMode_S0_":{"name":"init(referenceSize:mode:)","abstract":"

    Initialize a ResizingImageProcessor.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:FV10Kingfisher22ResizingImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor10targetSizeVSC6CGSize":{"name":"targetSize","abstract":"

    Reference size of output image should follow.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:FV10Kingfisher22ResizingImageProcessorcFT10targetSizeVSC6CGSize11contentModeOS_11ContentMode_S0_":{"name":"init(targetSize:contentMode:)","abstract":"

    Initialize a ResizingImageProcessor

    ","parent_name":"ResizingImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor12cornerRadiusV12CoreGraphics7CGFloat":{"name":"cornerRadius","abstract":"

    Corner radius will be applied in processing.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor15roundingCornersVS_10RectCorner":{"name":"roundingCorners","abstract":"

    The target corners which will be applied rounding.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor10targetSizeGSqVSC6CGSize_":{"name":"targetSize","abstract":"

    Target size of output image should be. If nil, the image will keep its original size after processing.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:FV10Kingfisher25RoundCornerImageProcessorcFT12cornerRadiusV12CoreGraphics7CGFloat10targetSizeGSqVSC6CGSize_15roundingCornersVS_10RectCorner_S0_":{"name":"init(cornerRadius:targetSize:roundingCorners:)","abstract":"

    Initialize a RoundCornerImageProcessor

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:FV10Kingfisher25RoundCornerImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RectCorner.html#/s:vPs16RawRepresentable8rawValuewx8RawValue":{"name":"rawValue","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner7topLeftS0_":{"name":"topLeft","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner8topRightS0_":{"name":"topRight","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner10bottomLeftS0_":{"name":"bottomLeft","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner11bottomRightS0_":{"name":"bottomRight","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner3allS0_":{"name":"all","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:FPs9OptionSetcFT8rawValuewx8RawValue_x":{"name":"init(rawValue:)","parent_name":"RectCorner"},"Structs/DefaultImageProcessor.html#/s:ZvV10Kingfisher21DefaultImageProcessor7defaultS0_":{"name":"default","abstract":"

    A default DefaultImageProcessor could be used across.

    ","parent_name":"DefaultImageProcessor"},"Structs/DefaultImageProcessor.html#/s:vV10Kingfisher21DefaultImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"DefaultImageProcessor"},"Structs/DefaultImageProcessor.html#/s:FV10Kingfisher21DefaultImageProcessorcFT_S0_":{"name":"init()","abstract":"

    Initialize a DefaultImageProcessor

    ","parent_name":"DefaultImageProcessor"},"Structs/DefaultImageProcessor.html#/s:FV10Kingfisher21DefaultImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"DefaultImageProcessor"},"Structs/RetrieveImageDownloadTask.html#/s:vV10Kingfisher25RetrieveImageDownloadTask15ownerDownloaderXwGSqCS_15ImageDownloader_":{"name":"ownerDownloader","abstract":"

    Downloader by which this task is intialized.

    ","parent_name":"RetrieveImageDownloadTask"},"Structs/RetrieveImageDownloadTask.html#/s:FV10Kingfisher25RetrieveImageDownloadTask6cancelFT_T_":{"name":"cancel()","abstract":"

    Cancel this download task. It will trigger the completion handler with an NSURLErrorCancelled error.

    ","parent_name":"RetrieveImageDownloadTask"},"Structs/RetrieveImageDownloadTask.html#/s:vV10Kingfisher25RetrieveImageDownloadTask3urlGSqV10Foundation3URL_":{"name":"url","abstract":"

    The original request URL of this download task.

    ","parent_name":"RetrieveImageDownloadTask"},"Structs/RetrieveImageDownloadTask.html#/s:vV10Kingfisher25RetrieveImageDownloadTask8prioritySf":{"name":"priority","abstract":"

    The relative priority of this download task.","parent_name":"RetrieveImageDownloadTask"},"Structs/Filter.html#/s:FV10Kingfisher6FiltercFT8tranformFCSo7CIImageGSqS1___S0_":{"name":"init(tranform:)","abstract":"

    Undocumented

    ","parent_name":"Filter"},"Structs/Filter.html#/s:ZvV10Kingfisher6Filter4tintFCSo7UIColorS0_":{"name":"tint","abstract":"

    Tint filter which will apply a tint color to images.

    ","parent_name":"Filter"},"Structs/Filter.html#/s:ZvV10Kingfisher6Filter12colorControlFTV12CoreGraphics7CGFloatS2_S2_S2__S0_":{"name":"colorControl","abstract":"

    Color control filter which will apply color control change to images.

    ","parent_name":"Filter"},"Structs/AnyModifier.html#/s:FV10Kingfisher11AnyModifier8modifiedFT3forV10Foundation10URLRequest_GSqS2__":{"name":"modified(for:)","abstract":"

    Undocumented

    ","parent_name":"AnyModifier"},"Structs/AnyModifier.html#/s:FV10Kingfisher11AnyModifiercFT6modifyFV10Foundation10URLRequestGSqS2___S0_":{"name":"init(modify:)","abstract":"

    Undocumented

    ","parent_name":"AnyModifier"},"Structs.html#/s:V10Kingfisher9DataProxy":{"name":"DataProxy","abstract":"

    Undocumented

    "},"Structs.html#/s:V10Kingfisher11CGSizeProxy":{"name":"CGSizeProxy","abstract":"

    Undocumented

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

    Undocumented

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

    Wrapper for a Transformer of CIImage filters.

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

    Download task.

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

    The default processor. It convert the input data to a valid image."},"Structs/RectCorner.html":{"name":"RectCorner","abstract":"

    Undocumented

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

    Processor for making round corner images. Only CG-based images are supported in macOS,"},"Structs/ResizingImageProcessor.html":{"name":"ResizingImageProcessor","abstract":"

    Processor for resizing images. Only CG-based images are supported in macOS.

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

    Processor for adding blur effect to images. Accelerate.framework is used underhood for"},"Structs/OverlayImageProcessor.html":{"name":"OverlayImageProcessor","abstract":"

    Processor for adding an overlay to images. Only CG-based images are supported in macOS.

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

    Processor for tint images with color. Only CG-based images are supported.

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

    Processor for applying some color control to images. Only CG-based images are supported."},"Structs/BlackWhiteProcessor.html":{"name":"BlackWhiteProcessor","abstract":"

    Processor for applying black and white effect to images. Only CG-based images are supported."},"Structs/CroppingImageProcessor.html":{"name":"CroppingImageProcessor","abstract":"

    Processor for cropping an image. Only CG-based images are supported."},"Structs/ImageResource.html":{"name":"ImageResource","abstract":"

    ImageResource is a simple combination of downloadURL and cacheKey.

    "},"Structs.html#/s:V10Kingfisher11StringProxy":{"name":"StringProxy","abstract":"

    Undocumented

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

    DefaultCacheSerializer is a basic CacheSerializer used in default cache of"},"Structs/FormatIndicatedCacheSerializer.html":{"name":"FormatIndicatedCacheSerializer","abstract":"

    FormatIndicatedCacheSerializer let you indicate an image format for serialized caches.

    "},"Protocols/CacheSerializer.html#/s:FP10Kingfisher15CacheSerializer4dataFT4withCSo7UIImage8originalGSqV10Foundation4Data__GSqS3__":{"name":"data(with:original:)","abstract":"

    Get the serialized data from a provided image","parent_name":"CacheSerializer"},"Protocols/CacheSerializer.html#/s:FP10Kingfisher15CacheSerializer5imageFT4withV10Foundation4Data7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"image(with:options:)","abstract":"

    Get an image deserialized from provided data.

    ","parent_name":"CacheSerializer"},"Protocols/Resource.html#/s:vP10Kingfisher8Resource8cacheKeySS":{"name":"cacheKey","abstract":"

    The key used in cache.

    ","parent_name":"Resource"},"Protocols/Resource.html#/s:vP10Kingfisher8Resource11downloadURLV10Foundation3URL":{"name":"downloadURL","abstract":"

    The target image URL.

    ","parent_name":"Resource"},"Protocols/Indicator.html#/s:FP10Kingfisher9Indicator18startAnimatingViewFT_T_":{"name":"startAnimatingView()","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/Indicator.html#/s:FP10Kingfisher9Indicator17stopAnimatingViewFT_T_":{"name":"stopAnimatingView()","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/Indicator.html#/s:vP10Kingfisher9Indicator10viewCenterVSC7CGPoint":{"name":"viewCenter","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/Indicator.html#/s:vP10Kingfisher9Indicator4viewCSo6UIView":{"name":"view","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/ImageProcessor.html#/s:vP10Kingfisher14ImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor. It will be used to identify the processor when","parent_name":"ImageProcessor"},"Protocols/ImageProcessor.html#/s:FP10Kingfisher14ImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"ImageProcessor"},"Protocols/ImageProcessor.html#/s:FE10KingfisherPS_14ImageProcessor6appendFT7anotherPS0___PS0__":{"name":"append(another:)","abstract":"

    Append an ImageProcessor to another. The identifier of the new ImageProcessor","parent_name":"ImageProcessor"},"Protocols/AuthenticationChallengeResponsable.html#/s:FP10Kingfisher34AuthenticationChallengeResponsable10downloaderFTCS_15ImageDownloader10didReceiveCSo26URLAuthenticationChallenge17completionHandlerFTOCSo10URLSession24AuthChallengeDispositionGSqCSo13URLCredential__T__T_":{"name":"downloader(_:didReceive:completionHandler:)","abstract":"

    Called when an session level authentication challenge is received.","parent_name":"AuthenticationChallengeResponsable"},"Protocols/ImageDownloaderDelegate.html#/s:FP10Kingfisher23ImageDownloaderDelegate15imageDownloaderFTCS_15ImageDownloader11didDownloadCSo7UIImage3forV10Foundation3URL4withGSqCSo11URLResponse__T_":{"name":"imageDownloader(_:didDownload:for:with:)","abstract":"

    Called when the ImageDownloader object successfully downloaded an image from specified URL.

    ","parent_name":"ImageDownloaderDelegate"},"Protocols/ImageDownloaderDelegate.html#/s:FP10Kingfisher23ImageDownloaderDelegate15imageDownloaderFTCS_15ImageDownloader23willDownloadImageForURLV10Foundation3URL4withGSqVS2_10URLRequest__T_":{"name":"imageDownloader(_:willDownloadImageForURL:with:)","abstract":"

    Called when the ImageDownloader object starts to download an image from specified URL.

    ","parent_name":"ImageDownloaderDelegate"},"Protocols/ImageDownloaderDelegate.html#/s:FP10Kingfisher23ImageDownloaderDelegate17isValidStatusCodeFTSi3forCS_15ImageDownloader_Sb":{"name":"isValidStatusCode(_:for:)","abstract":"

    Check if a received HTTP status code is valid or not.","parent_name":"ImageDownloaderDelegate"},"Protocols/KingfisherCompatible.html#/s:vP10Kingfisher20KingfisherCompatible2kfwx14CompatibleType":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"KingfisherCompatible"},"Protocols/CIImageProcessor.html#/s:vP10Kingfisher16CIImageProcessor6filterVS_6Filter":{"name":"filter","abstract":"

    Undocumented

    ","parent_name":"CIImageProcessor"},"Protocols/CIImageProcessor.html#/s:FP10Kingfisher14ImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","parent_name":"CIImageProcessor"},"Protocols/ImageDownloadRequestModifier.html#/s:FP10Kingfisher28ImageDownloadRequestModifier8modifiedFT3forV10Foundation10URLRequest_GSqS2__":{"name":"modified(for:)","abstract":"

    Undocumented

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

    Request modifier of image downloader.

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

    Supply a filter to create an ImageProcessor.

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

    A type that has Kingfisher extensions.

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

    Protocol of ImageDownloader.

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

    Protocol indicates that an authentication challenge could be handled.

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

    An ImageProcessor would be used to convert some downloaded data to an image.

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

    Undocumented

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

    Resource protocol defines how to download and cache a resource from network.

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

    An CacheSerializer would be used to convert some data to an image object for"},"Functions.html#/s:F10Kingfisheroi2ggFTPS_14ImageProcessor_PS0___PS0__":{"name":">>(_:_:)","abstract":"

    Concatenate two ImageProcessors. ImageProcessor.appen(another:) is used internally.

    "},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton11kf_setImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqS3__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"kf_setImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image to use for a specified state with a resource, a placeholder image, options, progress handler and","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton26kf_cancelImageDownloadTaskFT_T_":{"name":"kf_cancelImageDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton21kf_setBackgroundImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqS3__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"kf_setBackgroundImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set the background image to use for a specified state with a resource,","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton36kf_cancelBackgroundImageDownloadTaskFT_T_":{"name":"kf_cancelBackgroundImageDownloadTask()","abstract":"

    Cancel the background image download task bounded to the image view if it is running.","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton9kf_webURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"kf_webURL(for:)","abstract":"

    Get the image URL binded to this button for a specified state.

    ","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton19kf_backgroundWebURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"kf_backgroundWebURL(for:)","abstract":"

    Get the background image URL binded to this button for a specified state.

    ","parent_name":"UIButton"},"Extensions/String.html#/s:vE10KingfisherSS2kfVS_11StringProxy":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"String"},"Extensions/URL.html#/s:vP10Kingfisher8Resource8cacheKeySS":{"name":"cacheKey","parent_name":"URL"},"Extensions/URL.html#/s:vP10Kingfisher8Resource11downloadURLV10Foundation3URL":{"name":"downloadURL","parent_name":"URL"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_11targetCacheCS_10ImageCache":{"name":"targetCache","abstract":"

    The target ImageCache which is used.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_10downloaderCS_15ImageDownloader":{"name":"downloader","abstract":"

    The ImageDownloader which is specified.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_10transitionOS_15ImageTransition":{"name":"transition","abstract":"

    Member for animation transition when using UIImageView.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_16downloadPrioritySf":{"name":"downloadPriority","abstract":"

    A Float value set as the priority of image download task. The value for it should be","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_12forceRefreshSb":{"name":"forceRefresh","abstract":"

    Whether an image will be always downloaded again or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_15forceTransitionSb":{"name":"forceTransition","abstract":"

    Whether the transition should always happen or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_15cacheMemoryOnlySb":{"name":"cacheMemoryOnly","abstract":"

    Whether cache the image only in memory or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_13onlyFromCacheSb":{"name":"onlyFromCache","abstract":"

    Whether only load the images from cache or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_16backgroundDecodeSb":{"name":"backgroundDecode","abstract":"

    Whether the image should be decoded in background or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_23preloadAllAnimationDataSb":{"name":"preloadAllAnimationData","abstract":"

    Whether the image data should be all loaded at once if it is an animated image.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_21callbackDispatchQueueCSo13DispatchQueue":{"name":"callbackDispatchQueue","abstract":"

    The queue of callbacks should happen from Kingfisher.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_11scaleFactorV12CoreGraphics7CGFloat":{"name":"scaleFactor","abstract":"

    The scale factor which should be used for the image.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_8modifierPS_28ImageDownloadRequestModifier_":{"name":"modifier","abstract":"

    The ImageDownloadRequestModifier will be used before sending a download request.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_9processorPS_14ImageProcessor_":{"name":"processor","abstract":"

    ImageProcessor for processing when the downloading finishes.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_15cacheSerializerPS_15CacheSerializer_":{"name":"cacheSerializer","abstract":"

    CacheSerializer to convert image to data for storing in cache.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_28keepCurrentImageWhileLoadingSb":{"name":"keepCurrentImageWhileLoading","abstract":"

    Keep the existing image while setting another image to an image view.","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_18onlyLoadFirstFrameSb":{"name":"onlyLoadFirstFrame","abstract":"

    Undocumented

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_18cacheOriginalImageSb":{"name":"cacheOriginalImage","abstract":"

    Undocumented

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_17preloadAllGIFDataSb":{"name":"preloadAllGIFData","abstract":"

    Whether the image data should be all loaded at once if it is a GIF.

    ","parent_name":"Collection"},"Extensions/ImageView.html#/s:FE10KingfisherCSo11UIImageView11kf_setImageFT4withGSqPS_8Resource__11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S4__T__17completionHandlerGSqFTGSqS2__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"kf_setImage(with:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image with a resource, a placeholder image, options, progress handler and completion handler.

    ","parent_name":"ImageView"},"Extensions/ImageView.html#/s:FE10KingfisherCSo11UIImageView21kf_cancelDownloadTaskFT_T_":{"name":"kf_cancelDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"ImageView"},"Extensions/ImageView.html#/s:vE10KingfisherCSo11UIImageView9kf_webURLGSqV10Foundation3URL_":{"name":"kf_webURL","abstract":"

    Get the image URL binded to this image view.

    ","parent_name":"ImageView"},"Extensions/ImageView.html#/s:vE10KingfisherCSo11UIImageView16kf_indicatorTypeOS_13IndicatorType":{"name":"kf_indicatorType","abstract":"

    Holds which indicator type is going to be used.","parent_name":"ImageView"},"Extensions/ImageView.html#/s:vE10KingfisherCSo11UIImageView12kf_indicatorGSqPS_9Indicator__":{"name":"kf_indicator","abstract":"

    Undocumented

    ","parent_name":"ImageView"},"Extensions/Notification.html#/s:ZvE10KingfisherVCSo14NSNotification4Name27KingfisherDidCleanDiskCacheS1_":{"name":"KingfisherDidCleanDiskCache","abstract":"

    This notification will be sent when the disk cache got cleaned either there are cached files expired or the total size exceeding the max allowed size. The manually invoking of clearDiskCache method will not trigger this notification.

    ","parent_name":"Notification"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage13kf_normalizedFT_S0_":{"name":"kf_normalized()","abstract":"

    Normalize the image. This method does nothing in OS X.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage8kf_imageFT15withRoundRadiusV12CoreGraphics7CGFloat3fitVSC6CGSize5scaleS2__S0_":{"name":"kf_image(withRoundRadius:fit:scale:)","abstract":"

    Create a round corner image based on self.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage9kf_resizeFT2toVSC6CGSize_S0_":{"name":"kf_resize(to:)","abstract":"

    Resize self to an image of new size.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage10kf_blurredFT10withRadiusV12CoreGraphics7CGFloat_S0_":{"name":"kf_blurred(withRadius:)","abstract":"

    Create an image with blur effect based on self.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage13kf_overlayingFT4withCSo7UIColor8fractionV12CoreGraphics7CGFloat_S0_":{"name":"kf_overlaying(with:fraction:)","abstract":"

    Create an image from self with a color overlay layer.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage9kf_tintedFT4withCSo7UIColor_S0_":{"name":"kf_tinted(with:)","abstract":"

    Create an image from self with a color tint.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage11kf_adjustedFT10brightnessV12CoreGraphics7CGFloat8contrastS2_10saturationS2_7inputEVS2__S0_":{"name":"kf_adjusted(brightness:contrast:saturation:inputEV:)","abstract":"

    Create an image from self with color control.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage8kf_applyFVS_6FilterS0_":{"name":"kf_apply(_:)","abstract":"

    Apply a Filter containing CIImage transformer to self.

    ","parent_name":"Image"},"Extensions/CGSize.html#/s:vE10KingfisherVSC6CGSize2kfVS_11CGSizeProxy":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"CGSize"},"Extensions/Data.html#/s:vE10KingfisherV10Foundation4Data2kfVS_9DataProxy":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"Data"},"Extensions/Data.html":{"name":"Data","abstract":"

    Undocumented

    "},"Extensions/CGSize.html":{"name":"CGSize","abstract":"

    Undocumented

    "},"Extensions/Image.html":{"name":"Image","abstract":"

    Undocumented

    "},"Extensions/Notification.html":{"name":"Notification"},"Extensions/ImageView.html":{"name":"ImageView","abstract":"

    Undocumented

    "},"Extensions/Collection.html":{"name":"Collection"},"Extensions/URL.html":{"name":"URL","abstract":"

    URL conforms to Resource in Kingfisher."},"Extensions/String.html":{"name":"String"},"Extensions/UIButton.html":{"name":"UIButton","abstract":"

    Undocumented

    "},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem11targetCacheFMS0_FCS_10ImageCacheS0_":{"name":"targetCache","abstract":"

    The associated value of this member should be an ImageCache object. Kingfisher will use the specified","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem10downloaderFMS0_FCS_15ImageDownloaderS0_":{"name":"downloader","abstract":"

    The associated value of this member should be an ImageDownloader object. Kingfisher will use this","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem10transitionFMS0_FOS_15ImageTransitionS0_":{"name":"transition","abstract":"

    Member for animation transition when using UIImageView. Kingfisher will use the ImageTransition of","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem16downloadPriorityFMS0_FSfS0_":{"name":"downloadPriority","abstract":"

    Associated Float value will be set as the priority of image download task. The value for it should be","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem12forceRefreshFMS0_S0_":{"name":"forceRefresh","abstract":"

    If set, Kingfisher will ignore the cache and try to fire a download task for the resource.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15forceTransitionFMS0_S0_":{"name":"forceTransition","abstract":"

    If set, setting the image to an image view will happen with transition even when retrieved from cache.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15cacheMemoryOnlyFMS0_S0_":{"name":"cacheMemoryOnly","abstract":"

    If set, Kingfisher will only cache the value in memory but not in disk.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem13onlyFromCacheFMS0_S0_":{"name":"onlyFromCache","abstract":"

    If set, Kingfisher will only try to retrieve the image from cache not from network.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem16backgroundDecodeFMS0_S0_":{"name":"backgroundDecode","abstract":"

    Decode the image in background thread before using.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem21callbackDispatchQueueFMS0_FGSqCSo13DispatchQueue_S0_":{"name":"callbackDispatchQueue","abstract":"

    The associated value of this member will be used as the target queue of dispatch callbacks when","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem11scaleFactorFMS0_FV12CoreGraphics7CGFloatS0_":{"name":"scaleFactor","abstract":"

    The associated value of this member will be used as the scale factor when converting retrieved data to an image.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem23preloadAllAnimationDataFMS0_S0_":{"name":"preloadAllAnimationData","abstract":"

    Whether all the animated image data should be preloaded. Default it false, which means following frames will be","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15requestModifierFMS0_FPS_28ImageDownloadRequestModifier_S0_":{"name":"requestModifier","abstract":"

    The ImageDownloadRequestModifier contained will be used to change the request before it being sent.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem9processorFMS0_FPS_14ImageProcessor_S0_":{"name":"processor","abstract":"

    Processor for processing when the downloading finishes, a processor will convert the downloaded data to an image","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15cacheSerializerFMS0_FPS_15CacheSerializer_S0_":{"name":"cacheSerializer","abstract":"

    Supply an CacheSerializer to convert some data to an image object for","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem28keepCurrentImageWhileLoadingFMS0_S0_":{"name":"keepCurrentImageWhileLoading","abstract":"

    Keep the existing image while setting another image to an image view.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem18onlyLoadFirstFrameFMS0_S0_":{"name":"onlyLoadFirstFrame","abstract":"

    If set, Kingfisher will only load the first frame from a animated image data file as a single image.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem18cacheOriginalImageFMS0_S0_":{"name":"cacheOriginalImage","abstract":"

    If set and an ImageProcessor is used, Kingfisher will try to cache both","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:ZvO10Kingfisher25KingfisherOptionsInfoItem17preloadAllGIFDataS0_":{"name":"preloadAllGIFData","abstract":"

    Undocumented

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition4noneFMS0_S0_":{"name":"none","abstract":"

    No animation transistion.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition4fadeFMS0_FSdS0_":{"name":"fade","abstract":"

    Fade in the loaded image.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition12flipFromLeftFMS0_FSdS0_":{"name":"flipFromLeft","abstract":"

    Flip from left transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition13flipFromRightFMS0_FSdS0_":{"name":"flipFromRight","abstract":"

    Flip from right transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition11flipFromTopFMS0_FSdS0_":{"name":"flipFromTop","abstract":"

    Flip from top transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition14flipFromBottomFMS0_FSdS0_":{"name":"flipFromBottom","abstract":"

    Flip from bottom transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition6customFMS0_FT8durationSd7optionsVSC22UIViewAnimationOptions10animationsGSqFTCSo11UIImageViewCSo7UIImage_T__10completionGSqFSbT___S0_":{"name":"custom","abstract":"

    Custom transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/none":{"name":"none","abstract":"

    Undocumented

    ","parent_name":"ImageTransition"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType4noneFMS0_S0_":{"name":"none","abstract":"

    No indicator.

    ","parent_name":"IndicatorType"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType8activityFMS0_S0_":{"name":"activity","abstract":"

    Use system activity indicator.

    ","parent_name":"IndicatorType"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType5imageFMS0_FT9imageDataV10Foundation4Data_S0_":{"name":"image","abstract":"

    Use an image as indicator. GIF is supported.

    ","parent_name":"IndicatorType"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType6customFMS0_FT9indicatorPS_9Indicator__S0_":{"name":"custom","abstract":"

    Use a custom indicator, which conforms to the Indicator protocol.

    ","parent_name":"IndicatorType"},"Enums/ContentMode.html#/s:FO10Kingfisher11ContentMode4noneFMS0_S0_":{"name":"none","abstract":"

    Undocumented

    ","parent_name":"ContentMode"},"Enums/ContentMode.html#/s:FO10Kingfisher11ContentMode9aspectFitFMS0_S0_":{"name":"aspectFit","abstract":"

    Undocumented

    ","parent_name":"ContentMode"},"Enums/ContentMode.html#/s:FO10Kingfisher11ContentMode10aspectFillFMS0_S0_":{"name":"aspectFill","abstract":"

    Undocumented

    ","parent_name":"ContentMode"},"Enums/ImageProcessItem.html#/s:FO10Kingfisher16ImageProcessItem5imageFMS0_FCSo7UIImageS0_":{"name":"image","abstract":"

    Undocumented

    ","parent_name":"ImageProcessItem"},"Enums/ImageProcessItem.html#/s:FO10Kingfisher16ImageProcessItem4dataFMS0_FV10Foundation4DataS0_":{"name":"data","abstract":"

    Undocumented

    ","parent_name":"ImageProcessItem"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError7badDataFMS0_S0_":{"name":"badData","abstract":"

    badData: The downloaded data is not an image or the data is corrupted.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError11notModifiedFMS0_S0_":{"name":"notModified","abstract":"

    notModified: The remote server responsed a 304 code. No image data downloaded.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError17invalidStatusCodeFMS0_S0_":{"name":"invalidStatusCode","abstract":"

    The HTTP status code in response is not valid. If an invalid","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError9notCachedFMS0_S0_":{"name":"notCached","abstract":"

    notCached: The image rquested is not in cache but .onlyFromCache is activated.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError10invalidURLFMS0_S0_":{"name":"invalidURL","abstract":"

    The URL is invalid.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError31downloadCancelledBeforeStartingFMS0_S0_":{"name":"downloadCancelledBeforeStarting","abstract":"

    The downloading task is cancelled before started.

    ","parent_name":"KingfisherError"},"Enums/CacheType.html#/s:FO10Kingfisher9CacheType4noneFMS0_S0_":{"name":"none","abstract":"

    Undocumented

    ","parent_name":"CacheType"},"Enums/CacheType.html#/s:FO10Kingfisher9CacheType6memoryFMS0_S0_":{"name":"memory","abstract":"

    Undocumented

    ","parent_name":"CacheType"},"Enums/CacheType.html#/s:FO10Kingfisher9CacheType4diskFMS0_S0_":{"name":"disk","abstract":"

    Undocumented

    ","parent_name":"CacheType"},"Enums/CacheType.html":{"name":"CacheType","abstract":"

    Cache type of a cached image.

    "},"Enums/KingfisherError.html":{"name":"KingfisherError","abstract":"

    The code of errors which ImageDownloader might encountered.

    "},"Enums/ImageProcessItem.html":{"name":"ImageProcessItem","abstract":"

    The item which could be processed by an ImageProcessor

    "},"Enums/ContentMode.html":{"name":"ContentMode","abstract":"

    Specify how a size adjusts itself to fit a target size.

    "},"Enums/IndicatorType.html":{"name":"IndicatorType","abstract":"

    Undocumented

    "},"Enums/ImageTransition.html":{"name":"ImageTransition","abstract":"

    Transition effect which will be used when an image downloaded and set by UIImageView extension API in Kingfisher."},"Enums/KingfisherOptionsInfoItem.html":{"name":"KingfisherOptionsInfoItem","abstract":"

    Items could be added into KingfisherOptionsInfo.

    "},"Global Variables.html#/s:v10Kingfisher33KingfisherDiskCacheCleanedHashKeySS":{"name":"KingfisherDiskCacheCleanedHashKey","abstract":"

    Key for array of cleaned hashes in userInfo of KingfisherDidCleanDiskCacheNotification.

    "},"Global Variables.html#/s:v10Kingfisher28KingfisherErrorStatusCodeKeySS":{"name":"KingfisherErrorStatusCodeKey","abstract":"

    Key will be used in the userInfo of .invalidStatusCode

    "},"Global Variables.html#/s:v10Kingfisher21KingfisherErrorDomainSS":{"name":"KingfisherErrorDomain","abstract":"

    Error domain of Kingfisher

    "},"Classes/ImagePrefetcher.html#/s:vC10Kingfisher15ImagePrefetcher22maxConcurrentDownloadsSi":{"name":"maxConcurrentDownloads","abstract":"

    The maximum concurrent downloads to use when prefetching images. Default is 5.

    ","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetchercFT4urlsGSaV10Foundation3URL_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTGSaPS_8Resource__GSaPS4___GSaPS4____T__17completionHandlerGSqFTGSaPS4___GSaPS4___GSaPS4____T___S0_":{"name":"init(urls:options:progressBlock:completionHandler:)","abstract":"

    Init an image prefetcher with an array of URLs.

    ","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetchercFT9resourcesGSaPS_8Resource__7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTGSaPS1___GSaPS1___GSaPS1____T__17completionHandlerGSqFTGSaPS1___GSaPS1___GSaPS1____T___S0_":{"name":"init(resources:options:progressBlock:completionHandler:)","abstract":"

    Init an image prefetcher with an array of resources.

    ","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetcher5startFT_T_":{"name":"start()","abstract":"

    Start to download the resources and cache them. This can be useful for background downloading","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetcher4stopFT_T_":{"name":"stop()","abstract":"

    Stop current downloading progress, and cancel any future prefetching activity that might be occuring.

    ","parent_name":"ImagePrefetcher"},"Classes/KingfisherManager.html#/s:ZvC10Kingfisher17KingfisherManager6sharedS0_":{"name":"shared","abstract":"

    Shared manager used by the extensions across Kingfisher.

    ","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:vC10Kingfisher17KingfisherManager5cacheCS_10ImageCache":{"name":"cache","abstract":"

    Cache used by this manager

    ","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:vC10Kingfisher17KingfisherManager10downloaderCS_15ImageDownloader":{"name":"downloader","abstract":"

    Downloader used by this manager

    ","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:vC10Kingfisher17KingfisherManager14defaultOptionsGSaOS_25KingfisherOptionsInfoItem_":{"name":"defaultOptions","abstract":"

    Default options used by the manager. This option will be used in","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:FC10Kingfisher17KingfisherManager13retrieveImageFT4withPS_8Resource_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S3__T__17completionHandlerGSqFTGSqCSo7UIImage_GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"retrieveImage(with:options:progressBlock:completionHandler:)","abstract":"

    Get an image with resource.","parent_name":"KingfisherManager"},"Classes/RetrieveImageTask.html#/s:ZvC10Kingfisher17RetrieveImageTask5emptyS0_":{"name":"empty","abstract":"

    Undocumented

    ","parent_name":"RetrieveImageTask"},"Classes/RetrieveImageTask.html#/s:vC10Kingfisher17RetrieveImageTask16diskRetrieveTaskGSqC8Dispatch16DispatchWorkItem_":{"name":"diskRetrieveTask","abstract":"

    The disk retrieve task in this image task. Kingfisher will try to look up in cache first. This task represent the cache search task.

    ","parent_name":"RetrieveImageTask"},"Classes/RetrieveImageTask.html#/s:vC10Kingfisher17RetrieveImageTask12downloadTaskGSqVS_25RetrieveImageDownloadTask_":{"name":"downloadTask","abstract":"

    The network retrieve task in this image task.

    ","parent_name":"RetrieveImageTask"},"Classes/RetrieveImageTask.html#/s:FC10Kingfisher17RetrieveImageTask6cancelFT_T_":{"name":"cancel()","abstract":"

    Cancel current task. If this task is already done, do nothing.

    ","parent_name":"RetrieveImageTask"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader15downloadTimeoutSd":{"name":"downloadTimeout","abstract":"

    The duration before the download is timeout. Default is 15 seconds.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader12trustedHostsGSqGVs3SetSS__":{"name":"trustedHosts","abstract":"

    A set of trusted hosts when receiving server trust challenges. A challenge with host name contained in this set will be ignored.","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader20sessionConfigurationCSo23URLSessionConfiguration":{"name":"sessionConfiguration","abstract":"

    Use this to set supply a configuration for the downloader. By default, NSURLSessionConfiguration.ephemeralSessionConfiguration() will be used.","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader21requestsUsePipeliningSb":{"name":"requestsUsePipelining","abstract":"

    Whether the download requests should use pipeling or not. Default is false.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader8delegateXwGSqPS_23ImageDownloaderDelegate__":{"name":"delegate","abstract":"

    Delegate of this ImageDownloader object. See ImageDownloaderDelegate protocol for more.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader32authenticationChallengeResponderXwGSqPS_34AuthenticationChallengeResponsable__":{"name":"authenticationChallengeResponder","abstract":"

    A responder for authentication challenge.","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:ZvC10Kingfisher15ImageDownloader7defaultS0_":{"name":"default","abstract":"

    The default downloader.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:FC10Kingfisher15ImageDownloadercFT4nameSS_S0_":{"name":"init(name:)","abstract":"

    Init a downloader with name.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:FC10Kingfisher15ImageDownloader13downloadImageFT4withV10Foundation3URL17retrieveImageTaskGSqCS_17RetrieveImageTask_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqCSo7UIImage_GSqCSo7NSError_GSqS2__GSqVS1_4Data__T___GSqVS_25RetrieveImageDownloadTask_":{"name":"downloadImage(with:retrieveImageTask:options:progressBlock:completionHandler:)","abstract":"

    Download an image with a URL and option.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader19requestsUsePipelingSb":{"name":"requestsUsePipeling","abstract":"

    Undocumented

    ","parent_name":"ImageDownloader"},"Classes/ImageCache/CacheCheckResult.html#/s:vVC10Kingfisher10ImageCache16CacheCheckResult6cachedSb":{"name":"cached","abstract":"

    Undocumented

    ","parent_name":"CacheCheckResult"},"Classes/ImageCache/CacheCheckResult.html#/s:vVC10Kingfisher10ImageCache16CacheCheckResult9cacheTypeGSqOS_9CacheType_":{"name":"cacheType","abstract":"

    Undocumented

    ","parent_name":"CacheCheckResult"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache13maxMemoryCostSu":{"name":"maxMemoryCost","abstract":"

    The largest cache cost of memory cache. The total cost is pixel count of","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache13diskCachePathSS":{"name":"diskCachePath","abstract":"

    The disk cache location.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache13pathExtensionGSqSS_":{"name":"pathExtension","abstract":"

    The default file extension appended to cached files.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache22maxCachePeriodInSecondSd":{"name":"maxCachePeriodInSecond","abstract":"

    The longest time duration in second of the cache being stored in disk.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache16maxDiskCacheSizeSu":{"name":"maxDiskCacheSize","abstract":"

    The largest disk size can be taken for the cache. It is the total","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:ZvC10Kingfisher10ImageCache7defaultS0_":{"name":"default","abstract":"

    The default cache.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:C10Kingfisher10ImageCache20DiskCachePathClosure":{"name":"DiskCachePathClosure","abstract":"

    Closure that defines the disk cache path from a given path and cacheName.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:ZFC10Kingfisher10ImageCache27defaultDiskCachePathClosureFT4pathGSqSS_9cacheNameSS_SS":{"name":"defaultDiskCachePathClosure(path:cacheName:)","abstract":"

    The default DiskCachePathClosure

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCachecFT4nameSS4pathGSqSS_20diskCachePathClosureFTGSqSS_SS_SS_S0_":{"name":"init(name:path:diskCachePathClosure:)","abstract":"

    Init method. Passing a name for the cache. It represents a cache folder in the memory and disk.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache5storeFTCSo7UIImage8originalGSqV10Foundation4Data_6forKeySS19processorIdentifierSS15cacheSerializerPS_15CacheSerializer_6toDiskSb17completionHandlerGSqFT_T___T_":{"name":"store(_:original:forKey:processorIdentifier:cacheSerializer:toDisk:completionHandler:)","abstract":"

    Store an image to cache. It will be saved to both memory and disk. It is an async operation.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache11removeImageFT6forKeySS19processorIdentifierSS8fromDiskSb17completionHandlerGSqFT_T___T_":{"name":"removeImage(forKey:processorIdentifier:fromDisk:completionHandler:)","abstract":"

    Remove the image for key for the cache. It will be opted out from both memory and disk.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache13retrieveImageFT6forKeySS7optionsGSqGSaOS_25KingfisherOptionsInfoItem__17completionHandlerGSqFTGSqCSo7UIImage_OS_9CacheType_T___GSqC8Dispatch16DispatchWorkItem_":{"name":"retrieveImage(forKey:options:completionHandler:)","abstract":"

    Get an image for a key from memory or disk.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache26retrieveImageInMemoryCacheFT6forKeySS7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"retrieveImageInMemoryCache(forKey:options:)","abstract":"

    Get an image for a key from memory.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache24retrieveImageInDiskCacheFT6forKeySS7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"retrieveImageInDiskCache(forKey:options:)","abstract":"

    Get an image for a key from disk.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache16clearMemoryCacheFT_T_":{"name":"clearMemoryCache()","abstract":"

    Clear memory cache.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache14clearDiskCacheFT10completionGSqFT_T___T_":{"name":"clearDiskCache(completion:)","abstract":"

    Clear disk cache. This is an async operation.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache21cleanExpiredDiskCacheFT10completionGSqFT_T___T_":{"name":"cleanExpiredDiskCache(completion:)","abstract":"

    Clean expired disk cache. This is an async operation.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache31backgroundCleanExpiredDiskCacheFT_T_":{"name":"backgroundCleanExpiredDiskCache()","abstract":"

    Clean expired disk cache when app in background. This is an async operation.","parent_name":"ImageCache"},"Classes/ImageCache/CacheCheckResult.html":{"name":"CacheCheckResult","abstract":"

    Cache result for checking whether an image is cached for a key.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache13isImageCachedFT6forKeySS19processorIdentifierSS_VS0_16CacheCheckResult":{"name":"isImageCached(forKey:processorIdentifier:)","abstract":"

    Check whether an image is cached for a key.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache4hashFT6forKeySS19processorIdentifierSS_SS":{"name":"hash(forKey:processorIdentifier:)","abstract":"

    Get the hash for the key. This could be used for matching files.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache22calculateDiskCacheSizeFT10completionFSuT__T_":{"name":"calculateDiskCacheSize(completion:)","abstract":"

    Calculate the disk size taken by cache.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache9cachePathFT6forKeySS19processorIdentifierSS_SS":{"name":"cachePath(forKey:processorIdentifier:)","abstract":"

    Get the cache path for the key.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache9cachePathFT14forComputedKeySS_SS":{"name":"cachePath(forComputedKey:)","abstract":"

    Undocumented

    ","parent_name":"ImageCache"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView21autoPlayAnimatedImageSb":{"name":"autoPlayAnimatedImage","abstract":"

    Whether automatically play the animation when the view become visible. Default is true.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView17framePreloadCountSi":{"name":"framePreloadCount","abstract":"

    The size of the frame cache.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView15needsPrescalingSb":{"name":"needsPrescaling","abstract":"

    Specifies whether the GIF frames should be pre-scaled to save memory. Default is true.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView11runLoopModeVSC11RunLoopMode":{"name":"runLoopMode","abstract":"

    The animation timer’s run loop mode. Default is NSRunLoopCommonModes. Set this property to NSDefaultRunLoopMode will make the animation pause during UIScrollView scrolling.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView5imageGSqCSo7UIImage_":{"name":"image","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView11isAnimatingSb":{"name":"isAnimating","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView14startAnimatingFT_T_":{"name":"startAnimating()","abstract":"

    Starts the animation.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView13stopAnimatingFT_T_":{"name":"stopAnimating()","abstract":"

    Stops the animation.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView7displayFCSo7CALayerT_":{"name":"display(_:)","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView15didMoveToWindowFT_T_":{"name":"didMoveToWindow()","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView18didMoveToSuperviewFT_T_":{"name":"didMoveToSuperview()","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/Kingfisher.html#/s:vC10Kingfisher10Kingfisher4basex":{"name":"base","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:FC10Kingfisher10KingfishercFxGS0_x_":{"name":"init(_:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/normalized":{"name":"normalized","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo7UIImagerCS_10Kingfisher10normalizedS0_":{"name":"normalized","abstract":"

    Normalize the image. This method will try to redraw an image with orientation and scale considered.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher17pngRepresentationFT_GSqV10Foundation4Data_":{"name":"pngRepresentation()","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher18jpegRepresentationFT18compressionQualityV12CoreGraphics7CGFloat_GSqV10Foundation4Data_":{"name":"jpegRepresentation(compressionQuality:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher17gifRepresentationFT_GSqV10Foundation4Data_":{"name":"gifRepresentation()","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher5imageFT15withRoundRadiusV12CoreGraphics7CGFloat3fitVSC6CGSize15roundingCornersVS_10RectCorner_S0_":{"name":"image(withRoundRadius:fit:roundingCorners:)","abstract":"

    Create a round corner image based on self.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher6resizeFT2toVSC6CGSize_S0_":{"name":"resize(to:)","abstract":"

    Resize self to an image of new size.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher6resizeFT2toVSC6CGSize3forOS_11ContentMode_S0_":{"name":"resize(to:for:)","abstract":"

    Resize self to an image of new size, respecting the content mode.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher4cropFT2toVSC6CGSize8anchorOnVSC7CGPoint_S0_":{"name":"crop(to:anchorOn:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher7blurredFT10withRadiusV12CoreGraphics7CGFloat_S0_":{"name":"blurred(withRadius:)","abstract":"

    Create an image with blur effect based on self.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher10overlayingFT4withCSo7UIColor8fractionV12CoreGraphics7CGFloat_S0_":{"name":"overlaying(with:fraction:)","abstract":"

    Create an image from self with a color overlay layer.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher6tintedFT4withCSo7UIColor_S0_":{"name":"tinted(with:)","abstract":"

    Create an image from self with a color tint.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher8adjustedFT10brightnessV12CoreGraphics7CGFloat8contrastS3_10saturationS3_7inputEVS3__S0_":{"name":"adjusted(brightness:contrast:saturation:inputEV:)","abstract":"

    Create an image from self with color control.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher5imageFT15withRoundRadiusV12CoreGraphics7CGFloat3fitVSC6CGSize5scaleS3__S0_":{"name":"image(withRoundRadius:fit:scale:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher5applyFVS_6FilterS0_":{"name":"apply(_:)","abstract":"

    Apply a Filter containing CIImage transformer to self.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Zve10KingfisherRxCSo13UIApplicationrCS_10Kingfisher6sharedGSqS0__":{"name":"shared","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo11UIImageViewrCS_10Kingfisher8setImageFT4withGSqPS_8Resource__11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqS3__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"setImage(with:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image with a resource, a placeholder image, options, progress handler and completion handler.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo11UIImageViewrCS_10Kingfisher18cancelDownloadTaskFT_T_":{"name":"cancelDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo11UIImageViewrCS_10Kingfisher6webURLGSqV10Foundation3URL_":{"name":"webURL","abstract":"

    Get the image URL binded to this image view.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo11UIImageViewrCS_10Kingfisher13indicatorTypeOS_13IndicatorType":{"name":"indicatorType","abstract":"

    Holds which indicator type is going to be used.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo11UIImageViewrCS_10Kingfisher9indicatorGSqPS_9Indicator__":{"name":"indicator","abstract":"

    Holds any type that conforms to the protocol Indicator.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher8setImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S6__T__17completionHandlerGSqFTGSqS4__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"setImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image to use for a specified state with a resource, a placeholder image, options, progress handler and","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher23cancelImageDownloadTaskFT_T_":{"name":"cancelImageDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher18setBackgroundImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S6__T__17completionHandlerGSqFTGSqS4__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"setBackgroundImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set the background image to use for a specified state with a resource,","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher33cancelBackgroundImageDownloadTaskFT_T_":{"name":"cancelBackgroundImageDownloadTask()","abstract":"

    Cancel the background image download task bounded to the image view if it is running.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher6webURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"webURL(for:)","abstract":"

    Get the image URL binded to this button for a specified state.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher16backgroundWebURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"backgroundWebURL(for:)","abstract":"

    Get the background image URL binded to this button for a specified state.

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

    Undocumented

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

    AnimatedImageView is a subclass of UIImageView for displaying animated image.

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

    ImageCache represents both the memory and disk cache system of Kingfisher."},"Classes/ImageDownloader.html":{"name":"ImageDownloader","abstract":"

    ImageDownloader represents a downloading manager for requesting the image with a URL from server.

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

    RetrieveImageTask represents a task of image retrieving process."},"Classes/KingfisherManager.html":{"name":"KingfisherManager","abstract":"

    Main manager class of Kingfisher. It connects Kingfisher downloader and cache."},"Classes/ImagePrefetcher.html":{"name":"ImagePrefetcher","abstract":"

    ImagePrefetcher represents a downloading manager for requesting many images via URLs, then caching them."},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Global Variables.html":{"name":"Global Variables","abstract":"

    The following global variables are available globally.

    "},"Enums.html":{"name":"Enums","abstract":"

    The following enums are available globally.

    "},"Extensions.html":{"name":"Extensions","abstract":"

    The following extensions are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

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

    The following protocols are available globally.

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

    The following structs are available globally.

    "},"Typealiases.html":{"name":"Typealiases","abstract":"

    The following typealiases are available globally.

    "}} \ No newline at end of file +{"Typealiases.html#/s:10Kingfisher11Transformer":{"name":"Transformer","abstract":"

    Transformer method which will be used in to provide a Filter.

    "},"Typealiases.html#/s:10Kingfisher21RetrieveImageDiskTask":{"name":"RetrieveImageDiskTask","abstract":"

    It represents a task of retrieving image. You can call cancel on it to stop the process.

    "},"Typealiases.html#/s:10Kingfisher28ImageDownloaderProgressBlock":{"name":"ImageDownloaderProgressBlock","abstract":"

    Progress update block of downloader.

    "},"Typealiases.html#/s:10Kingfisher32ImageDownloaderCompletionHandler":{"name":"ImageDownloaderCompletionHandler","abstract":"

    Completion block of downloader.

    "},"Typealiases.html#/s:10Kingfisher21KingfisherOptionsInfo":{"name":"KingfisherOptionsInfo","abstract":"

    KingfisherOptionsInfo is a typealias for [KingfisherOptionsInfoItem]. You can use the enum of option item with value to control some behaviors of Kingfisher.

    "},"Typealiases.html#/s:10Kingfisher23PrefetcherProgressBlock":{"name":"PrefetcherProgressBlock","abstract":"

    Progress update block of prefetcher.

    "},"Typealiases.html#/s:10Kingfisher27PrefetcherCompletionHandler":{"name":"PrefetcherCompletionHandler","abstract":"

    Completion block of prefetcher.

    "},"Structs/FormatIndicatedCacheSerializer.html#/s:ZvV10Kingfisher30FormatIndicatedCacheSerializer3pngS0_":{"name":"png","abstract":"

    Undocumented

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:ZvV10Kingfisher30FormatIndicatedCacheSerializer4jpegS0_":{"name":"jpeg","abstract":"

    Undocumented

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:ZvV10Kingfisher30FormatIndicatedCacheSerializer3gifS0_":{"name":"gif","abstract":"

    Undocumented

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:FP10Kingfisher15CacheSerializer4dataFT4withCSo7UIImage8originalGSqV10Foundation4Data__GSqS3__":{"name":"data(with:original:)","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:FV10Kingfisher30FormatIndicatedCacheSerializer5imageFT4withV10Foundation4Data7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"image(with:options:)","abstract":"

    Same implementation as DefaultCacheSerializer.

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/DefaultCacheSerializer.html#/s:ZvV10Kingfisher22DefaultCacheSerializer7defaultS0_":{"name":"default","abstract":"

    Undocumented

    ","parent_name":"DefaultCacheSerializer"},"Structs/DefaultCacheSerializer.html#/s:FP10Kingfisher15CacheSerializer4dataFT4withCSo7UIImage8originalGSqV10Foundation4Data__GSqS3__":{"name":"data(with:original:)","parent_name":"DefaultCacheSerializer"},"Structs/DefaultCacheSerializer.html#/s:FP10Kingfisher15CacheSerializer5imageFT4withV10Foundation4Data7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"image(with:options:)","parent_name":"DefaultCacheSerializer"},"Structs/ImageResource.html#/s:vV10Kingfisher13ImageResource8cacheKeySS":{"name":"cacheKey","abstract":"

    The key used in cache.

    ","parent_name":"ImageResource"},"Structs/ImageResource.html#/s:vV10Kingfisher13ImageResource11downloadURLV10Foundation3URL":{"name":"downloadURL","abstract":"

    The target image URL.

    ","parent_name":"ImageResource"},"Structs/ImageResource.html#/s:FV10Kingfisher13ImageResourcecFT11downloadURLV10Foundation3URL8cacheKeyGSqSS__S0_":{"name":"init(downloadURL:cacheKey:)","abstract":"

    Create a resource.

    ","parent_name":"ImageResource"},"Structs/CroppingImageProcessor.html#/s:vV10Kingfisher22CroppingImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:vV10Kingfisher22CroppingImageProcessor4sizeVSC6CGSize":{"name":"size","abstract":"

    Target size of output image should be.

    ","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:vV10Kingfisher22CroppingImageProcessor6anchorVSC7CGPoint":{"name":"anchor","abstract":"

    Anchor point from which the output size should be calculate.","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:FV10Kingfisher22CroppingImageProcessorcFT4sizeVSC6CGSize6anchorVSC7CGPoint_S0_":{"name":"init(size:anchor:)","abstract":"

    Initialize a CroppingImageProcessor

    ","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:FV10Kingfisher22CroppingImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"CroppingImageProcessor"},"Structs/BlackWhiteProcessor.html#/s:vV10Kingfisher19BlackWhiteProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"BlackWhiteProcessor"},"Structs/BlackWhiteProcessor.html#/s:FV10Kingfisher19BlackWhiteProcessorcFT_S0_":{"name":"init()","abstract":"

    Initialize a BlackWhiteProcessor

    ","parent_name":"BlackWhiteProcessor"},"Structs/BlackWhiteProcessor.html#/s:FV10Kingfisher19BlackWhiteProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"BlackWhiteProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor10brightnessV12CoreGraphics7CGFloat":{"name":"brightness","abstract":"

    Brightness changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor8contrastV12CoreGraphics7CGFloat":{"name":"contrast","abstract":"

    Contrast changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor10saturationV12CoreGraphics7CGFloat":{"name":"saturation","abstract":"

    Saturation changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor7inputEVV12CoreGraphics7CGFloat":{"name":"inputEV","abstract":"

    InputEV changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:FV10Kingfisher22ColorControlsProcessorcFT10brightnessV12CoreGraphics7CGFloat8contrastS2_10saturationS2_7inputEVS2__S0_":{"name":"init(brightness:contrast:saturation:inputEV:)","abstract":"

    Initialize a ColorControlsProcessor

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:FV10Kingfisher22ColorControlsProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"ColorControlsProcessor"},"Structs/TintImageProcessor.html#/s:vV10Kingfisher18TintImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"TintImageProcessor"},"Structs/TintImageProcessor.html#/s:vV10Kingfisher18TintImageProcessor4tintCSo7UIColor":{"name":"tint","abstract":"

    Tint color will be used to tint the input image.

    ","parent_name":"TintImageProcessor"},"Structs/TintImageProcessor.html#/s:FV10Kingfisher18TintImageProcessorcFT4tintCSo7UIColor_S0_":{"name":"init(tint:)","abstract":"

    Initialize a TintImageProcessor

    ","parent_name":"TintImageProcessor"},"Structs/TintImageProcessor.html#/s:FV10Kingfisher18TintImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"TintImageProcessor"},"Structs/OverlayImageProcessor.html#/s:vV10Kingfisher21OverlayImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:vV10Kingfisher21OverlayImageProcessor7overlayCSo7UIColor":{"name":"overlay","abstract":"

    Overlay color will be used to overlay the input image.

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:vV10Kingfisher21OverlayImageProcessor8fractionV12CoreGraphics7CGFloat":{"name":"fraction","abstract":"

    Fraction will be used when overlay the color to image.

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:FV10Kingfisher21OverlayImageProcessorcFT7overlayCSo7UIColor8fractionV12CoreGraphics7CGFloat_S0_":{"name":"init(overlay:fraction:)","abstract":"

    Initialize an OverlayImageProcessor

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:FV10Kingfisher21OverlayImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"OverlayImageProcessor"},"Structs/BlurImageProcessor.html#/s:vV10Kingfisher18BlurImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"BlurImageProcessor"},"Structs/BlurImageProcessor.html#/s:vV10Kingfisher18BlurImageProcessor10blurRadiusV12CoreGraphics7CGFloat":{"name":"blurRadius","abstract":"

    Blur radius for the simulated Gaussian blur.

    ","parent_name":"BlurImageProcessor"},"Structs/BlurImageProcessor.html#/s:FV10Kingfisher18BlurImageProcessorcFT10blurRadiusV12CoreGraphics7CGFloat_S0_":{"name":"init(blurRadius:)","abstract":"

    Initialize a BlurImageProcessor

    ","parent_name":"BlurImageProcessor"},"Structs/BlurImageProcessor.html#/s:FV10Kingfisher18BlurImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"BlurImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor13referenceSizeVSC6CGSize":{"name":"referenceSize","abstract":"

    The reference size for resizing operation.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor17targetContentModeOS_11ContentMode":{"name":"targetContentMode","abstract":"

    Target content mode of output image should be.","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:FV10Kingfisher22ResizingImageProcessorcFT13referenceSizeVSC6CGSize4modeOS_11ContentMode_S0_":{"name":"init(referenceSize:mode:)","abstract":"

    Initialize a ResizingImageProcessor.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:FV10Kingfisher22ResizingImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor10targetSizeVSC6CGSize":{"name":"targetSize","abstract":"

    Reference size of output image should follow.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:FV10Kingfisher22ResizingImageProcessorcFT10targetSizeVSC6CGSize11contentModeOS_11ContentMode_S0_":{"name":"init(targetSize:contentMode:)","abstract":"

    Initialize a ResizingImageProcessor

    ","parent_name":"ResizingImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor12cornerRadiusV12CoreGraphics7CGFloat":{"name":"cornerRadius","abstract":"

    Corner radius will be applied in processing.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor15roundingCornersVS_10RectCorner":{"name":"roundingCorners","abstract":"

    The target corners which will be applied rounding.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor10targetSizeGSqVSC6CGSize_":{"name":"targetSize","abstract":"

    Target size of output image should be. If nil, the image will keep its original size after processing.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:FV10Kingfisher25RoundCornerImageProcessorcFT12cornerRadiusV12CoreGraphics7CGFloat10targetSizeGSqVSC6CGSize_15roundingCornersVS_10RectCorner_S0_":{"name":"init(cornerRadius:targetSize:roundingCorners:)","abstract":"

    Initialize a RoundCornerImageProcessor

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:FV10Kingfisher25RoundCornerImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RectCorner.html#/s:vPs16RawRepresentable8rawValuewx8RawValue":{"name":"rawValue","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner7topLeftS0_":{"name":"topLeft","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner8topRightS0_":{"name":"topRight","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner10bottomLeftS0_":{"name":"bottomLeft","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner11bottomRightS0_":{"name":"bottomRight","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner3allS0_":{"name":"all","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:FPs9OptionSetcFT8rawValuewx8RawValue_x":{"name":"init(rawValue:)","parent_name":"RectCorner"},"Structs/DefaultImageProcessor.html#/s:ZvV10Kingfisher21DefaultImageProcessor7defaultS0_":{"name":"default","abstract":"

    A default DefaultImageProcessor could be used across.

    ","parent_name":"DefaultImageProcessor"},"Structs/DefaultImageProcessor.html#/s:vV10Kingfisher21DefaultImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"DefaultImageProcessor"},"Structs/DefaultImageProcessor.html#/s:FV10Kingfisher21DefaultImageProcessorcFT_S0_":{"name":"init()","abstract":"

    Initialize a DefaultImageProcessor

    ","parent_name":"DefaultImageProcessor"},"Structs/DefaultImageProcessor.html#/s:FV10Kingfisher21DefaultImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"DefaultImageProcessor"},"Structs/RetrieveImageDownloadTask.html#/s:vV10Kingfisher25RetrieveImageDownloadTask15ownerDownloaderXwGSqCS_15ImageDownloader_":{"name":"ownerDownloader","abstract":"

    Downloader by which this task is intialized.

    ","parent_name":"RetrieveImageDownloadTask"},"Structs/RetrieveImageDownloadTask.html#/s:FV10Kingfisher25RetrieveImageDownloadTask6cancelFT_T_":{"name":"cancel()","abstract":"

    Cancel this download task. It will trigger the completion handler with an NSURLErrorCancelled error.

    ","parent_name":"RetrieveImageDownloadTask"},"Structs/RetrieveImageDownloadTask.html#/s:vV10Kingfisher25RetrieveImageDownloadTask3urlGSqV10Foundation3URL_":{"name":"url","abstract":"

    The original request URL of this download task.

    ","parent_name":"RetrieveImageDownloadTask"},"Structs/RetrieveImageDownloadTask.html#/s:vV10Kingfisher25RetrieveImageDownloadTask8prioritySf":{"name":"priority","abstract":"

    The relative priority of this download task.","parent_name":"RetrieveImageDownloadTask"},"Structs/Filter.html#/s:FV10Kingfisher6FiltercFT8tranformFCSo7CIImageGSqS1___S0_":{"name":"init(tranform:)","abstract":"

    Undocumented

    ","parent_name":"Filter"},"Structs/Filter.html#/s:ZvV10Kingfisher6Filter4tintFCSo7UIColorS0_":{"name":"tint","abstract":"

    Tint filter which will apply a tint color to images.

    ","parent_name":"Filter"},"Structs/Filter.html#/s:ZvV10Kingfisher6Filter12colorControlFTV12CoreGraphics7CGFloatS2_S2_S2__S0_":{"name":"colorControl","abstract":"

    Color control filter which will apply color control change to images.

    ","parent_name":"Filter"},"Structs/AnyModifier.html#/s:FV10Kingfisher11AnyModifier8modifiedFT3forV10Foundation10URLRequest_GSqS2__":{"name":"modified(for:)","abstract":"

    Undocumented

    ","parent_name":"AnyModifier"},"Structs/AnyModifier.html#/s:FV10Kingfisher11AnyModifiercFT6modifyFV10Foundation10URLRequestGSqS2___S0_":{"name":"init(modify:)","abstract":"

    Undocumented

    ","parent_name":"AnyModifier"},"Structs.html#/s:V10Kingfisher9DataProxy":{"name":"DataProxy","abstract":"

    Undocumented

    "},"Structs.html#/s:V10Kingfisher11CGSizeProxy":{"name":"CGSizeProxy","abstract":"

    Undocumented

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

    Undocumented

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

    Wrapper for a Transformer of CIImage filters.

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

    Download task.

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

    The default processor. It convert the input data to a valid image."},"Structs/RectCorner.html":{"name":"RectCorner","abstract":"

    Undocumented

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

    Processor for making round corner images. Only CG-based images are supported in macOS,"},"Structs/ResizingImageProcessor.html":{"name":"ResizingImageProcessor","abstract":"

    Processor for resizing images. Only CG-based images are supported in macOS.

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

    Processor for adding blur effect to images. Accelerate.framework is used underhood for"},"Structs/OverlayImageProcessor.html":{"name":"OverlayImageProcessor","abstract":"

    Processor for adding an overlay to images. Only CG-based images are supported in macOS.

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

    Processor for tint images with color. Only CG-based images are supported.

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

    Processor for applying some color control to images. Only CG-based images are supported."},"Structs/BlackWhiteProcessor.html":{"name":"BlackWhiteProcessor","abstract":"

    Processor for applying black and white effect to images. Only CG-based images are supported."},"Structs/CroppingImageProcessor.html":{"name":"CroppingImageProcessor","abstract":"

    Processor for cropping an image. Only CG-based images are supported."},"Structs/ImageResource.html":{"name":"ImageResource","abstract":"

    ImageResource is a simple combination of downloadURL and cacheKey.

    "},"Structs.html#/s:V10Kingfisher11StringProxy":{"name":"StringProxy","abstract":"

    Undocumented

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

    DefaultCacheSerializer is a basic CacheSerializer used in default cache of"},"Structs/FormatIndicatedCacheSerializer.html":{"name":"FormatIndicatedCacheSerializer","abstract":"

    FormatIndicatedCacheSerializer let you indicate an image format for serialized caches.

    "},"Protocols/CacheSerializer.html#/s:FP10Kingfisher15CacheSerializer4dataFT4withCSo7UIImage8originalGSqV10Foundation4Data__GSqS3__":{"name":"data(with:original:)","abstract":"

    Get the serialized data from a provided image","parent_name":"CacheSerializer"},"Protocols/CacheSerializer.html#/s:FP10Kingfisher15CacheSerializer5imageFT4withV10Foundation4Data7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"image(with:options:)","abstract":"

    Get an image deserialized from provided data.

    ","parent_name":"CacheSerializer"},"Protocols/Resource.html#/s:vP10Kingfisher8Resource8cacheKeySS":{"name":"cacheKey","abstract":"

    The key used in cache.

    ","parent_name":"Resource"},"Protocols/Resource.html#/s:vP10Kingfisher8Resource11downloadURLV10Foundation3URL":{"name":"downloadURL","abstract":"

    The target image URL.

    ","parent_name":"Resource"},"Protocols/Indicator.html#/s:FP10Kingfisher9Indicator18startAnimatingViewFT_T_":{"name":"startAnimatingView()","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/Indicator.html#/s:FP10Kingfisher9Indicator17stopAnimatingViewFT_T_":{"name":"stopAnimatingView()","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/Indicator.html#/s:vP10Kingfisher9Indicator10viewCenterVSC7CGPoint":{"name":"viewCenter","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/Indicator.html#/s:vP10Kingfisher9Indicator4viewCSo6UIView":{"name":"view","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/ImageProcessor.html#/s:vP10Kingfisher14ImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor. It will be used to identify the processor when","parent_name":"ImageProcessor"},"Protocols/ImageProcessor.html#/s:FP10Kingfisher14ImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"ImageProcessor"},"Protocols/ImageProcessor.html#/s:FE10KingfisherPS_14ImageProcessor6appendFT7anotherPS0___PS0__":{"name":"append(another:)","abstract":"

    Append an ImageProcessor to another. The identifier of the new ImageProcessor","parent_name":"ImageProcessor"},"Protocols/AuthenticationChallengeResponsable.html#/s:FP10Kingfisher34AuthenticationChallengeResponsable10downloaderFTCS_15ImageDownloader10didReceiveCSo26URLAuthenticationChallenge17completionHandlerFTOCSo10URLSession24AuthChallengeDispositionGSqCSo13URLCredential__T__T_":{"name":"downloader(_:didReceive:completionHandler:)","abstract":"

    Called when an session level authentication challenge is received.","parent_name":"AuthenticationChallengeResponsable"},"Protocols/ImageDownloaderDelegate.html#/s:FP10Kingfisher23ImageDownloaderDelegate15imageDownloaderFTCS_15ImageDownloader11didDownloadCSo7UIImage3forV10Foundation3URL4withGSqCSo11URLResponse__T_":{"name":"imageDownloader(_:didDownload:for:with:)","abstract":"

    Called when the ImageDownloader object successfully downloaded an image from specified URL.

    ","parent_name":"ImageDownloaderDelegate"},"Protocols/ImageDownloaderDelegate.html#/s:FP10Kingfisher23ImageDownloaderDelegate15imageDownloaderFTCS_15ImageDownloader23willDownloadImageForURLV10Foundation3URL4withGSqVS2_10URLRequest__T_":{"name":"imageDownloader(_:willDownloadImageForURL:with:)","abstract":"

    Called when the ImageDownloader object starts to download an image from specified URL.

    ","parent_name":"ImageDownloaderDelegate"},"Protocols/ImageDownloaderDelegate.html#/s:FP10Kingfisher23ImageDownloaderDelegate17isValidStatusCodeFTSi3forCS_15ImageDownloader_Sb":{"name":"isValidStatusCode(_:for:)","abstract":"

    Check if a received HTTP status code is valid or not.","parent_name":"ImageDownloaderDelegate"},"Protocols/KingfisherCompatible.html#/s:vP10Kingfisher20KingfisherCompatible2kfwx14CompatibleType":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"KingfisherCompatible"},"Protocols/CIImageProcessor.html#/s:vP10Kingfisher16CIImageProcessor6filterVS_6Filter":{"name":"filter","abstract":"

    Undocumented

    ","parent_name":"CIImageProcessor"},"Protocols/CIImageProcessor.html#/s:FP10Kingfisher14ImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","parent_name":"CIImageProcessor"},"Protocols/ImageDownloadRequestModifier.html#/s:FP10Kingfisher28ImageDownloadRequestModifier8modifiedFT3forV10Foundation10URLRequest_GSqS2__":{"name":"modified(for:)","abstract":"

    Undocumented

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

    Request modifier of image downloader.

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

    Supply a filter to create an ImageProcessor.

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

    A type that has Kingfisher extensions.

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

    Protocol of ImageDownloader.

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

    Protocol indicates that an authentication challenge could be handled.

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

    An ImageProcessor would be used to convert some downloaded data to an image.

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

    Undocumented

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

    Resource protocol defines how to download and cache a resource from network.

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

    An CacheSerializer would be used to convert some data to an image object for"},"Functions.html#/s:F10Kingfisheroi2ggFTPS_14ImageProcessor_PS0___PS0__":{"name":">>(_:_:)","abstract":"

    Concatenate two ImageProcessors. ImageProcessor.appen(another:) is used internally.

    "},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton11kf_setImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqS3__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"kf_setImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image to use for a specified state with a resource, a placeholder image, options, progress handler and","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton26kf_cancelImageDownloadTaskFT_T_":{"name":"kf_cancelImageDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton21kf_setBackgroundImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqS3__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"kf_setBackgroundImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set the background image to use for a specified state with a resource,","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton36kf_cancelBackgroundImageDownloadTaskFT_T_":{"name":"kf_cancelBackgroundImageDownloadTask()","abstract":"

    Cancel the background image download task bounded to the image view if it is running.","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton9kf_webURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"kf_webURL(for:)","abstract":"

    Get the image URL binded to this button for a specified state.

    ","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton19kf_backgroundWebURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"kf_backgroundWebURL(for:)","abstract":"

    Get the background image URL binded to this button for a specified state.

    ","parent_name":"UIButton"},"Extensions/String.html#/s:vE10KingfisherSS2kfVS_11StringProxy":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"String"},"Extensions/URL.html#/s:vP10Kingfisher8Resource8cacheKeySS":{"name":"cacheKey","parent_name":"URL"},"Extensions/URL.html#/s:vP10Kingfisher8Resource11downloadURLV10Foundation3URL":{"name":"downloadURL","parent_name":"URL"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_11targetCacheCS_10ImageCache":{"name":"targetCache","abstract":"

    The target ImageCache which is used.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_10downloaderCS_15ImageDownloader":{"name":"downloader","abstract":"

    The ImageDownloader which is specified.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_10transitionOS_15ImageTransition":{"name":"transition","abstract":"

    Member for animation transition when using UIImageView.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_16downloadPrioritySf":{"name":"downloadPriority","abstract":"

    A Float value set as the priority of image download task. The value for it should be","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_12forceRefreshSb":{"name":"forceRefresh","abstract":"

    Whether an image will be always downloaded again or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_15forceTransitionSb":{"name":"forceTransition","abstract":"

    Whether the transition should always happen or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_15cacheMemoryOnlySb":{"name":"cacheMemoryOnly","abstract":"

    Whether cache the image only in memory or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_13onlyFromCacheSb":{"name":"onlyFromCache","abstract":"

    Whether only load the images from cache or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_16backgroundDecodeSb":{"name":"backgroundDecode","abstract":"

    Whether the image should be decoded in background or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_23preloadAllAnimationDataSb":{"name":"preloadAllAnimationData","abstract":"

    Whether the image data should be all loaded at once if it is an animated image.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_21callbackDispatchQueueCSo13DispatchQueue":{"name":"callbackDispatchQueue","abstract":"

    The queue of callbacks should happen from Kingfisher.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_11scaleFactorV12CoreGraphics7CGFloat":{"name":"scaleFactor","abstract":"

    The scale factor which should be used for the image.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_8modifierPS_28ImageDownloadRequestModifier_":{"name":"modifier","abstract":"

    The ImageDownloadRequestModifier will be used before sending a download request.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_9processorPS_14ImageProcessor_":{"name":"processor","abstract":"

    ImageProcessor for processing when the downloading finishes.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_15cacheSerializerPS_15CacheSerializer_":{"name":"cacheSerializer","abstract":"

    CacheSerializer to convert image to data for storing in cache.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_28keepCurrentImageWhileLoadingSb":{"name":"keepCurrentImageWhileLoading","abstract":"

    Keep the existing image while setting another image to an image view.","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_18onlyLoadFirstFrameSb":{"name":"onlyLoadFirstFrame","abstract":"

    Undocumented

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_18cacheOriginalImageSb":{"name":"cacheOriginalImage","abstract":"

    Undocumented

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_17preloadAllGIFDataSb":{"name":"preloadAllGIFData","abstract":"

    Whether the image data should be all loaded at once if it is a GIF.

    ","parent_name":"Collection"},"Extensions/ImageView.html#/s:FE10KingfisherCSo11UIImageView11kf_setImageFT4withGSqPS_8Resource__11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S4__T__17completionHandlerGSqFTGSqS2__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"kf_setImage(with:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image with a resource, a placeholder image, options, progress handler and completion handler.

    ","parent_name":"ImageView"},"Extensions/ImageView.html#/s:FE10KingfisherCSo11UIImageView21kf_cancelDownloadTaskFT_T_":{"name":"kf_cancelDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"ImageView"},"Extensions/ImageView.html#/s:vE10KingfisherCSo11UIImageView9kf_webURLGSqV10Foundation3URL_":{"name":"kf_webURL","abstract":"

    Get the image URL binded to this image view.

    ","parent_name":"ImageView"},"Extensions/ImageView.html#/s:vE10KingfisherCSo11UIImageView16kf_indicatorTypeOS_13IndicatorType":{"name":"kf_indicatorType","abstract":"

    Holds which indicator type is going to be used.","parent_name":"ImageView"},"Extensions/ImageView.html#/s:vE10KingfisherCSo11UIImageView12kf_indicatorGSqPS_9Indicator__":{"name":"kf_indicator","abstract":"

    Undocumented

    ","parent_name":"ImageView"},"Extensions/Notification/Name.html#/s:ZvE10KingfisherVCSo14NSNotification4Name27KingfisherDidCleanDiskCacheS1_":{"name":"KingfisherDidCleanDiskCache","abstract":"

    This notification will be sent when the disk cache got cleaned either there are cached files expired or the total size exceeding the max allowed size. The manually invoking of clearDiskCache method will not trigger this notification.

    ","parent_name":"Name"},"Extensions/Notification/Name.html":{"name":"Name","parent_name":"Notification"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage13kf_normalizedFT_S0_":{"name":"kf_normalized()","abstract":"

    Normalize the image. This method does nothing in OS X.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage8kf_imageFT15withRoundRadiusV12CoreGraphics7CGFloat3fitVSC6CGSize5scaleS2__S0_":{"name":"kf_image(withRoundRadius:fit:scale:)","abstract":"

    Create a round corner image based on self.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage9kf_resizeFT2toVSC6CGSize_S0_":{"name":"kf_resize(to:)","abstract":"

    Resize self to an image of new size.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage10kf_blurredFT10withRadiusV12CoreGraphics7CGFloat_S0_":{"name":"kf_blurred(withRadius:)","abstract":"

    Create an image with blur effect based on self.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage13kf_overlayingFT4withCSo7UIColor8fractionV12CoreGraphics7CGFloat_S0_":{"name":"kf_overlaying(with:fraction:)","abstract":"

    Create an image from self with a color overlay layer.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage9kf_tintedFT4withCSo7UIColor_S0_":{"name":"kf_tinted(with:)","abstract":"

    Create an image from self with a color tint.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage11kf_adjustedFT10brightnessV12CoreGraphics7CGFloat8contrastS2_10saturationS2_7inputEVS2__S0_":{"name":"kf_adjusted(brightness:contrast:saturation:inputEV:)","abstract":"

    Create an image from self with color control.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage8kf_applyFVS_6FilterS0_":{"name":"kf_apply(_:)","abstract":"

    Apply a Filter containing CIImage transformer to self.

    ","parent_name":"Image"},"Extensions/CGSize.html#/s:vE10KingfisherVSC6CGSize2kfVS_11CGSizeProxy":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"CGSize"},"Extensions/Data.html#/s:vE10KingfisherV10Foundation4Data2kfVS_9DataProxy":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"Data"},"Extensions/Data.html":{"name":"Data"},"Extensions/CGSize.html":{"name":"CGSize"},"Extensions/Image.html":{"name":"Image","abstract":"

    Undocumented

    "},"Extensions/Notification.html":{"name":"Notification"},"Extensions/ImageView.html":{"name":"ImageView","abstract":"

    Undocumented

    "},"Extensions/Collection.html":{"name":"Collection"},"Extensions/URL.html":{"name":"URL","abstract":"

    URL conforms to Resource in Kingfisher."},"Extensions/String.html":{"name":"String"},"Extensions/UIButton.html":{"name":"UIButton","abstract":"

    Set image to use from web for a specified state. Deprecated. Use kf namespacing instead.

    "},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem11targetCacheFMS0_FCS_10ImageCacheS0_":{"name":"targetCache","abstract":"

    The associated value of this member should be an ImageCache object. Kingfisher will use the specified","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem10downloaderFMS0_FCS_15ImageDownloaderS0_":{"name":"downloader","abstract":"

    The associated value of this member should be an ImageDownloader object. Kingfisher will use this","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem10transitionFMS0_FOS_15ImageTransitionS0_":{"name":"transition","abstract":"

    Member for animation transition when using UIImageView. Kingfisher will use the ImageTransition of","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem16downloadPriorityFMS0_FSfS0_":{"name":"downloadPriority","abstract":"

    Associated Float value will be set as the priority of image download task. The value for it should be","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem12forceRefreshFMS0_S0_":{"name":"forceRefresh","abstract":"

    If set, Kingfisher will ignore the cache and try to fire a download task for the resource.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15forceTransitionFMS0_S0_":{"name":"forceTransition","abstract":"

    If set, setting the image to an image view will happen with transition even when retrieved from cache.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15cacheMemoryOnlyFMS0_S0_":{"name":"cacheMemoryOnly","abstract":"

    If set, Kingfisher will only cache the value in memory but not in disk.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem13onlyFromCacheFMS0_S0_":{"name":"onlyFromCache","abstract":"

    If set, Kingfisher will only try to retrieve the image from cache not from network.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem16backgroundDecodeFMS0_S0_":{"name":"backgroundDecode","abstract":"

    Decode the image in background thread before using.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem21callbackDispatchQueueFMS0_FGSqCSo13DispatchQueue_S0_":{"name":"callbackDispatchQueue","abstract":"

    The associated value of this member will be used as the target queue of dispatch callbacks when","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem11scaleFactorFMS0_FV12CoreGraphics7CGFloatS0_":{"name":"scaleFactor","abstract":"

    The associated value of this member will be used as the scale factor when converting retrieved data to an image.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem23preloadAllAnimationDataFMS0_S0_":{"name":"preloadAllAnimationData","abstract":"

    Whether all the animated image data should be preloaded. Default it false, which means following frames will be","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15requestModifierFMS0_FPS_28ImageDownloadRequestModifier_S0_":{"name":"requestModifier","abstract":"

    The ImageDownloadRequestModifier contained will be used to change the request before it being sent.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem9processorFMS0_FPS_14ImageProcessor_S0_":{"name":"processor","abstract":"

    Processor for processing when the downloading finishes, a processor will convert the downloaded data to an image","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15cacheSerializerFMS0_FPS_15CacheSerializer_S0_":{"name":"cacheSerializer","abstract":"

    Supply an CacheSerializer to convert some data to an image object for","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem28keepCurrentImageWhileLoadingFMS0_S0_":{"name":"keepCurrentImageWhileLoading","abstract":"

    Keep the existing image while setting another image to an image view.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem18onlyLoadFirstFrameFMS0_S0_":{"name":"onlyLoadFirstFrame","abstract":"

    If set, Kingfisher will only load the first frame from a animated image data file as a single image.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem18cacheOriginalImageFMS0_S0_":{"name":"cacheOriginalImage","abstract":"

    If set and an ImageProcessor is used, Kingfisher will try to cache both","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:ZvO10Kingfisher25KingfisherOptionsInfoItem17preloadAllGIFDataS0_":{"name":"preloadAllGIFData","abstract":"

    Undocumented

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition4noneFMS0_S0_":{"name":"none","abstract":"

    No animation transistion.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition4fadeFMS0_FSdS0_":{"name":"fade","abstract":"

    Fade in the loaded image.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition12flipFromLeftFMS0_FSdS0_":{"name":"flipFromLeft","abstract":"

    Flip from left transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition13flipFromRightFMS0_FSdS0_":{"name":"flipFromRight","abstract":"

    Flip from right transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition11flipFromTopFMS0_FSdS0_":{"name":"flipFromTop","abstract":"

    Flip from top transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition14flipFromBottomFMS0_FSdS0_":{"name":"flipFromBottom","abstract":"

    Flip from bottom transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition6customFMS0_FT8durationSd7optionsVSC22UIViewAnimationOptions10animationsGSqFTCSo11UIImageViewCSo7UIImage_T__10completionGSqFSbT___S0_":{"name":"custom","abstract":"

    Custom transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/none":{"name":"none","parent_name":"ImageTransition"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType4noneFMS0_S0_":{"name":"none","abstract":"

    No indicator.

    ","parent_name":"IndicatorType"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType8activityFMS0_S0_":{"name":"activity","abstract":"

    Use system activity indicator.

    ","parent_name":"IndicatorType"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType5imageFMS0_FT9imageDataV10Foundation4Data_S0_":{"name":"image","abstract":"

    Use an image as indicator. GIF is supported.

    ","parent_name":"IndicatorType"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType6customFMS0_FT9indicatorPS_9Indicator__S0_":{"name":"custom","abstract":"

    Use a custom indicator, which conforms to the Indicator protocol.

    ","parent_name":"IndicatorType"},"Enums/ContentMode.html#/s:FO10Kingfisher11ContentMode4noneFMS0_S0_":{"name":"none","abstract":"

    Undocumented

    ","parent_name":"ContentMode"},"Enums/ContentMode.html#/s:FO10Kingfisher11ContentMode9aspectFitFMS0_S0_":{"name":"aspectFit","abstract":"

    Undocumented

    ","parent_name":"ContentMode"},"Enums/ContentMode.html#/s:FO10Kingfisher11ContentMode10aspectFillFMS0_S0_":{"name":"aspectFill","abstract":"

    Undocumented

    ","parent_name":"ContentMode"},"Enums/ImageProcessItem.html#/s:FO10Kingfisher16ImageProcessItem5imageFMS0_FCSo7UIImageS0_":{"name":"image","abstract":"

    Undocumented

    ","parent_name":"ImageProcessItem"},"Enums/ImageProcessItem.html#/s:FO10Kingfisher16ImageProcessItem4dataFMS0_FV10Foundation4DataS0_":{"name":"data","abstract":"

    Undocumented

    ","parent_name":"ImageProcessItem"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError7badDataFMS0_S0_":{"name":"badData","abstract":"

    badData: The downloaded data is not an image or the data is corrupted.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError11notModifiedFMS0_S0_":{"name":"notModified","abstract":"

    notModified: The remote server responsed a 304 code. No image data downloaded.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError17invalidStatusCodeFMS0_S0_":{"name":"invalidStatusCode","abstract":"

    The HTTP status code in response is not valid. If an invalid","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError9notCachedFMS0_S0_":{"name":"notCached","abstract":"

    notCached: The image rquested is not in cache but .onlyFromCache is activated.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError10invalidURLFMS0_S0_":{"name":"invalidURL","abstract":"

    The URL is invalid.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError31downloadCancelledBeforeStartingFMS0_S0_":{"name":"downloadCancelledBeforeStarting","abstract":"

    The downloading task is cancelled before started.

    ","parent_name":"KingfisherError"},"Enums/CacheType.html#/s:FO10Kingfisher9CacheType4noneFMS0_S0_":{"name":"none","abstract":"

    Undocumented

    ","parent_name":"CacheType"},"Enums/CacheType.html#/s:FO10Kingfisher9CacheType6memoryFMS0_S0_":{"name":"memory","abstract":"

    Undocumented

    ","parent_name":"CacheType"},"Enums/CacheType.html#/s:FO10Kingfisher9CacheType4diskFMS0_S0_":{"name":"disk","abstract":"

    Undocumented

    ","parent_name":"CacheType"},"Enums/CacheType.html":{"name":"CacheType","abstract":"

    Cache type of a cached image.

    "},"Enums/KingfisherError.html":{"name":"KingfisherError","abstract":"

    The code of errors which ImageDownloader might encountered.

    "},"Enums/ImageProcessItem.html":{"name":"ImageProcessItem","abstract":"

    The item which could be processed by an ImageProcessor

    "},"Enums/ContentMode.html":{"name":"ContentMode","abstract":"

    Specify how a size adjusts itself to fit a target size.

    "},"Enums/IndicatorType.html":{"name":"IndicatorType","abstract":"

    Undocumented

    "},"Enums/ImageTransition.html":{"name":"ImageTransition","abstract":"

    Transition effect which will be used when an image downloaded and set by UIImageView extension API in Kingfisher."},"Enums/KingfisherOptionsInfoItem.html":{"name":"KingfisherOptionsInfoItem","abstract":"

    Items could be added into KingfisherOptionsInfo.

    "},"Global Variables.html#/s:v10Kingfisher33KingfisherDiskCacheCleanedHashKeySS":{"name":"KingfisherDiskCacheCleanedHashKey","abstract":"

    Key for array of cleaned hashes in userInfo of KingfisherDidCleanDiskCacheNotification.

    "},"Global Variables.html#/s:v10Kingfisher28KingfisherErrorStatusCodeKeySS":{"name":"KingfisherErrorStatusCodeKey","abstract":"

    Key will be used in the userInfo of .invalidStatusCode

    "},"Global Variables.html#/s:v10Kingfisher21KingfisherErrorDomainSS":{"name":"KingfisherErrorDomain","abstract":"

    Error domain of Kingfisher

    "},"Classes/ImagePrefetcher.html#/s:vC10Kingfisher15ImagePrefetcher22maxConcurrentDownloadsSi":{"name":"maxConcurrentDownloads","abstract":"

    The maximum concurrent downloads to use when prefetching images. Default is 5.

    ","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetchercFT4urlsGSaV10Foundation3URL_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTGSaPS_8Resource__GSaPS4___GSaPS4____T__17completionHandlerGSqFTGSaPS4___GSaPS4___GSaPS4____T___S0_":{"name":"init(urls:options:progressBlock:completionHandler:)","abstract":"

    Init an image prefetcher with an array of URLs.

    ","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetchercFT9resourcesGSaPS_8Resource__7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTGSaPS1___GSaPS1___GSaPS1____T__17completionHandlerGSqFTGSaPS1___GSaPS1___GSaPS1____T___S0_":{"name":"init(resources:options:progressBlock:completionHandler:)","abstract":"

    Init an image prefetcher with an array of resources.

    ","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetcher5startFT_T_":{"name":"start()","abstract":"

    Start to download the resources and cache them. This can be useful for background downloading","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetcher4stopFT_T_":{"name":"stop()","abstract":"

    Stop current downloading progress, and cancel any future prefetching activity that might be occuring.

    ","parent_name":"ImagePrefetcher"},"Classes/KingfisherManager.html#/s:ZvC10Kingfisher17KingfisherManager6sharedS0_":{"name":"shared","abstract":"

    Shared manager used by the extensions across Kingfisher.

    ","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:vC10Kingfisher17KingfisherManager5cacheCS_10ImageCache":{"name":"cache","abstract":"

    Cache used by this manager

    ","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:vC10Kingfisher17KingfisherManager10downloaderCS_15ImageDownloader":{"name":"downloader","abstract":"

    Downloader used by this manager

    ","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:vC10Kingfisher17KingfisherManager14defaultOptionsGSaOS_25KingfisherOptionsInfoItem_":{"name":"defaultOptions","abstract":"

    Default options used by the manager. This option will be used in","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:FC10Kingfisher17KingfisherManager13retrieveImageFT4withPS_8Resource_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S3__T__17completionHandlerGSqFTGSqCSo7UIImage_GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"retrieveImage(with:options:progressBlock:completionHandler:)","abstract":"

    Get an image with resource.","parent_name":"KingfisherManager"},"Classes/RetrieveImageTask.html#/s:ZvC10Kingfisher17RetrieveImageTask5emptyS0_":{"name":"empty","abstract":"

    Undocumented

    ","parent_name":"RetrieveImageTask"},"Classes/RetrieveImageTask.html#/s:vC10Kingfisher17RetrieveImageTask16diskRetrieveTaskGSqC8Dispatch16DispatchWorkItem_":{"name":"diskRetrieveTask","abstract":"

    The disk retrieve task in this image task. Kingfisher will try to look up in cache first. This task represent the cache search task.

    ","parent_name":"RetrieveImageTask"},"Classes/RetrieveImageTask.html#/s:vC10Kingfisher17RetrieveImageTask12downloadTaskGSqVS_25RetrieveImageDownloadTask_":{"name":"downloadTask","abstract":"

    The network retrieve task in this image task.

    ","parent_name":"RetrieveImageTask"},"Classes/RetrieveImageTask.html#/s:FC10Kingfisher17RetrieveImageTask6cancelFT_T_":{"name":"cancel()","abstract":"

    Cancel current task. If this task is already done, do nothing.

    ","parent_name":"RetrieveImageTask"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader15downloadTimeoutSd":{"name":"downloadTimeout","abstract":"

    The duration before the download is timeout. Default is 15 seconds.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader12trustedHostsGSqGVs3SetSS__":{"name":"trustedHosts","abstract":"

    A set of trusted hosts when receiving server trust challenges. A challenge with host name contained in this set will be ignored.","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader20sessionConfigurationCSo23URLSessionConfiguration":{"name":"sessionConfiguration","abstract":"

    Use this to set supply a configuration for the downloader. By default, NSURLSessionConfiguration.ephemeralSessionConfiguration() will be used.","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader21requestsUsePipeliningSb":{"name":"requestsUsePipelining","abstract":"

    Whether the download requests should use pipeling or not. Default is false.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader8delegateXwGSqPS_23ImageDownloaderDelegate__":{"name":"delegate","abstract":"

    Delegate of this ImageDownloader object. See ImageDownloaderDelegate protocol for more.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader32authenticationChallengeResponderXwGSqPS_34AuthenticationChallengeResponsable__":{"name":"authenticationChallengeResponder","abstract":"

    A responder for authentication challenge.","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:ZvC10Kingfisher15ImageDownloader7defaultS0_":{"name":"default","abstract":"

    The default downloader.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:FC10Kingfisher15ImageDownloadercFT4nameSS_S0_":{"name":"init(name:)","abstract":"

    Init a downloader with name.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:FC10Kingfisher15ImageDownloader13downloadImageFT4withV10Foundation3URL17retrieveImageTaskGSqCS_17RetrieveImageTask_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqCSo7UIImage_GSqCSo7NSError_GSqS2__GSqVS1_4Data__T___GSqVS_25RetrieveImageDownloadTask_":{"name":"downloadImage(with:retrieveImageTask:options:progressBlock:completionHandler:)","abstract":"

    Download an image with a URL and option.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader19requestsUsePipelingSb":{"name":"requestsUsePipeling","abstract":"

    Undocumented

    ","parent_name":"ImageDownloader"},"Classes/ImageCache/CacheCheckResult.html#/s:vVC10Kingfisher10ImageCache16CacheCheckResult6cachedSb":{"name":"cached","abstract":"

    Undocumented

    ","parent_name":"CacheCheckResult"},"Classes/ImageCache/CacheCheckResult.html#/s:vVC10Kingfisher10ImageCache16CacheCheckResult9cacheTypeGSqOS_9CacheType_":{"name":"cacheType","abstract":"

    Undocumented

    ","parent_name":"CacheCheckResult"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache13maxMemoryCostSu":{"name":"maxMemoryCost","abstract":"

    The largest cache cost of memory cache. The total cost is pixel count of","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache13diskCachePathSS":{"name":"diskCachePath","abstract":"

    The disk cache location.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache13pathExtensionGSqSS_":{"name":"pathExtension","abstract":"

    The default file extension appended to cached files.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache22maxCachePeriodInSecondSd":{"name":"maxCachePeriodInSecond","abstract":"

    The longest time duration in second of the cache being stored in disk.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache16maxDiskCacheSizeSu":{"name":"maxDiskCacheSize","abstract":"

    The largest disk size can be taken for the cache. It is the total","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:ZvC10Kingfisher10ImageCache7defaultS0_":{"name":"default","abstract":"

    The default cache.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:C10Kingfisher10ImageCache20DiskCachePathClosure":{"name":"DiskCachePathClosure","abstract":"

    Closure that defines the disk cache path from a given path and cacheName.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:ZFC10Kingfisher10ImageCache27defaultDiskCachePathClosureFT4pathGSqSS_9cacheNameSS_SS":{"name":"defaultDiskCachePathClosure(path:cacheName:)","abstract":"

    The default DiskCachePathClosure

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCachecFT4nameSS4pathGSqSS_20diskCachePathClosureFTGSqSS_SS_SS_S0_":{"name":"init(name:path:diskCachePathClosure:)","abstract":"

    Init method. Passing a name for the cache. It represents a cache folder in the memory and disk.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache5storeFTCSo7UIImage8originalGSqV10Foundation4Data_6forKeySS19processorIdentifierSS15cacheSerializerPS_15CacheSerializer_6toDiskSb17completionHandlerGSqFT_T___T_":{"name":"store(_:original:forKey:processorIdentifier:cacheSerializer:toDisk:completionHandler:)","abstract":"

    Store an image to cache. It will be saved to both memory and disk. It is an async operation.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache11removeImageFT6forKeySS19processorIdentifierSS8fromDiskSb17completionHandlerGSqFT_T___T_":{"name":"removeImage(forKey:processorIdentifier:fromDisk:completionHandler:)","abstract":"

    Remove the image for key for the cache. It will be opted out from both memory and disk.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache13retrieveImageFT6forKeySS7optionsGSqGSaOS_25KingfisherOptionsInfoItem__17completionHandlerGSqFTGSqCSo7UIImage_OS_9CacheType_T___GSqC8Dispatch16DispatchWorkItem_":{"name":"retrieveImage(forKey:options:completionHandler:)","abstract":"

    Get an image for a key from memory or disk.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache26retrieveImageInMemoryCacheFT6forKeySS7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"retrieveImageInMemoryCache(forKey:options:)","abstract":"

    Get an image for a key from memory.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache24retrieveImageInDiskCacheFT6forKeySS7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"retrieveImageInDiskCache(forKey:options:)","abstract":"

    Get an image for a key from disk.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache16clearMemoryCacheFT_T_":{"name":"clearMemoryCache()","abstract":"

    Clear memory cache.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache14clearDiskCacheFT10completionGSqFT_T___T_":{"name":"clearDiskCache(completion:)","abstract":"

    Clear disk cache. This is an async operation.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache21cleanExpiredDiskCacheFT10completionGSqFT_T___T_":{"name":"cleanExpiredDiskCache(completion:)","abstract":"

    Clean expired disk cache. This is an async operation.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache31backgroundCleanExpiredDiskCacheFT_T_":{"name":"backgroundCleanExpiredDiskCache()","abstract":"

    Clean expired disk cache when app in background. This is an async operation.","parent_name":"ImageCache"},"Classes/ImageCache/CacheCheckResult.html":{"name":"CacheCheckResult","abstract":"

    Cache result for checking whether an image is cached for a key.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache13isImageCachedFT6forKeySS19processorIdentifierSS_VS0_16CacheCheckResult":{"name":"isImageCached(forKey:processorIdentifier:)","abstract":"

    Check whether an image is cached for a key.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache4hashFT6forKeySS19processorIdentifierSS_SS":{"name":"hash(forKey:processorIdentifier:)","abstract":"

    Get the hash for the key. This could be used for matching files.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache22calculateDiskCacheSizeFT10completionFSuT__T_":{"name":"calculateDiskCacheSize(completion:)","abstract":"

    Calculate the disk size taken by cache.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache9cachePathFT6forKeySS19processorIdentifierSS_SS":{"name":"cachePath(forKey:processorIdentifier:)","abstract":"

    Get the cache path for the key.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache9cachePathFT14forComputedKeySS_SS":{"name":"cachePath(forComputedKey:)","abstract":"

    Undocumented

    ","parent_name":"ImageCache"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView21autoPlayAnimatedImageSb":{"name":"autoPlayAnimatedImage","abstract":"

    Whether automatically play the animation when the view become visible. Default is true.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView17framePreloadCountSi":{"name":"framePreloadCount","abstract":"

    The size of the frame cache.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView15needsPrescalingSb":{"name":"needsPrescaling","abstract":"

    Specifies whether the GIF frames should be pre-scaled to save memory. Default is true.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView11runLoopModeVSC11RunLoopMode":{"name":"runLoopMode","abstract":"

    The animation timer’s run loop mode. Default is NSRunLoopCommonModes. Set this property to NSDefaultRunLoopMode will make the animation pause during UIScrollView scrolling.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView5imageGSqCSo7UIImage_":{"name":"image","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView11isAnimatingSb":{"name":"isAnimating","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView14startAnimatingFT_T_":{"name":"startAnimating()","abstract":"

    Starts the animation.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView13stopAnimatingFT_T_":{"name":"stopAnimating()","abstract":"

    Stops the animation.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView7displayFCSo7CALayerT_":{"name":"display(_:)","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView15didMoveToWindowFT_T_":{"name":"didMoveToWindow()","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView18didMoveToSuperviewFT_T_":{"name":"didMoveToSuperview()","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/Kingfisher.html#/s:vC10Kingfisher10Kingfisher4basex":{"name":"base","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:FC10Kingfisher10KingfishercFxGS0_x_":{"name":"init(_:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/normalized":{"name":"normalized","abstract":"

    Normalize the image. This method does nothing in OS X.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo7UIImagerCS_10Kingfisher10normalizedS0_":{"name":"normalized","abstract":"

    Normalize the image. This method will try to redraw an image with orientation and scale considered.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher17pngRepresentationFT_GSqV10Foundation4Data_":{"name":"pngRepresentation()","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher18jpegRepresentationFT18compressionQualityV12CoreGraphics7CGFloat_GSqV10Foundation4Data_":{"name":"jpegRepresentation(compressionQuality:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher17gifRepresentationFT_GSqV10Foundation4Data_":{"name":"gifRepresentation()","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher5imageFT15withRoundRadiusV12CoreGraphics7CGFloat3fitVSC6CGSize15roundingCornersVS_10RectCorner_S0_":{"name":"image(withRoundRadius:fit:roundingCorners:)","abstract":"

    Create a round corner image based on self.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher6resizeFT2toVSC6CGSize_S0_":{"name":"resize(to:)","abstract":"

    Resize self to an image of new size.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher6resizeFT2toVSC6CGSize3forOS_11ContentMode_S0_":{"name":"resize(to:for:)","abstract":"

    Resize self to an image of new size, respecting the content mode.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher4cropFT2toVSC6CGSize8anchorOnVSC7CGPoint_S0_":{"name":"crop(to:anchorOn:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher7blurredFT10withRadiusV12CoreGraphics7CGFloat_S0_":{"name":"blurred(withRadius:)","abstract":"

    Create an image with blur effect based on self.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher10overlayingFT4withCSo7UIColor8fractionV12CoreGraphics7CGFloat_S0_":{"name":"overlaying(with:fraction:)","abstract":"

    Create an image from self with a color overlay layer.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher6tintedFT4withCSo7UIColor_S0_":{"name":"tinted(with:)","abstract":"

    Create an image from self with a color tint.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher8adjustedFT10brightnessV12CoreGraphics7CGFloat8contrastS3_10saturationS3_7inputEVS3__S0_":{"name":"adjusted(brightness:contrast:saturation:inputEV:)","abstract":"

    Create an image from self with color control.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher5imageFT15withRoundRadiusV12CoreGraphics7CGFloat3fitVSC6CGSize5scaleS3__S0_":{"name":"image(withRoundRadius:fit:scale:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher5applyFVS_6FilterS0_":{"name":"apply(_:)","abstract":"

    Apply a Filter containing CIImage transformer to self.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Zve10KingfisherRxCSo13UIApplicationrCS_10Kingfisher6sharedGSqS0__":{"name":"shared","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo11UIImageViewrCS_10Kingfisher8setImageFT4withGSqPS_8Resource__11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqS3__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"setImage(with:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image with a resource, a placeholder image, options, progress handler and completion handler.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo11UIImageViewrCS_10Kingfisher18cancelDownloadTaskFT_T_":{"name":"cancelDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo11UIImageViewrCS_10Kingfisher6webURLGSqV10Foundation3URL_":{"name":"webURL","abstract":"

    Get the image URL binded to this image view.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo11UIImageViewrCS_10Kingfisher13indicatorTypeOS_13IndicatorType":{"name":"indicatorType","abstract":"

    Holds which indicator type is going to be used.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo11UIImageViewrCS_10Kingfisher9indicatorGSqPS_9Indicator__":{"name":"indicator","abstract":"

    Holds any type that conforms to the protocol Indicator.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher8setImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S6__T__17completionHandlerGSqFTGSqS4__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"setImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image to use for a specified state with a resource, a placeholder image, options, progress handler and","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher23cancelImageDownloadTaskFT_T_":{"name":"cancelImageDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher18setBackgroundImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S6__T__17completionHandlerGSqFTGSqS4__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"setBackgroundImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set the background image to use for a specified state with a resource,","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher33cancelBackgroundImageDownloadTaskFT_T_":{"name":"cancelBackgroundImageDownloadTask()","abstract":"

    Cancel the background image download task bounded to the image view if it is running.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher6webURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"webURL(for:)","abstract":"

    Get the image URL binded to this button for a specified state.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher16backgroundWebURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"backgroundWebURL(for:)","abstract":"

    Get the background image URL binded to this button for a specified state.

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

    Undocumented

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

    AnimatedImageView is a subclass of UIImageView for displaying animated image.

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

    ImageCache represents both the memory and disk cache system of Kingfisher."},"Classes/ImageDownloader.html":{"name":"ImageDownloader","abstract":"

    ImageDownloader represents a downloading manager for requesting the image with a URL from server.

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

    RetrieveImageTask represents a task of image retrieving process."},"Classes/KingfisherManager.html":{"name":"KingfisherManager","abstract":"

    Main manager class of Kingfisher. It connects Kingfisher downloader and cache."},"Classes/ImagePrefetcher.html":{"name":"ImagePrefetcher","abstract":"

    ImagePrefetcher represents a downloading manager for requesting many images via URLs, then caching them."},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Global Variables.html":{"name":"Global Variables","abstract":"

    The following global variables are available globally.

    "},"Enums.html":{"name":"Enums","abstract":"

    The following enums are available globally.

    "},"Extensions.html":{"name":"Extensions","abstract":"

    The following extensions are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

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

    The following protocols are available globally.

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

    The following structs are available globally.

    "},"Typealiases.html":{"name":"Typealiases","abstract":"

    The following typealiases are available globally.

    "}} \ No newline at end of file diff --git a/docs/docsets/Kingfisher.docset/Contents/Resources/docSet.dsidx b/docs/docsets/Kingfisher.docset/Contents/Resources/docSet.dsidx index cf7ee3ec72d03b663fd1564d6979e9781bd2e7c2..b20efb986aea3e339ed708ac67e2a217fb318b24 100644 GIT binary patch delta 5334 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.Gq;c(6Y)Z%Tm`A@F*^j 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.10.3http://onevcat.github.io/Kingfisher/docsets/Kingfisher.tgz +3.10.4http://onevcat.github.io/Kingfisher/docsets/Kingfisher.tgz diff --git a/docs/index.html b/docs/index.html index 618119da6..d37d77b13 100644 --- a/docs/index.html +++ b/docs/index.html @@ -121,6 +121,9 @@

    + @@ -368,8 +371,8 @@

    License

    diff --git a/docs/search.json b/docs/search.json index 34d9f2c54..09bbb8e81 100644 --- a/docs/search.json +++ b/docs/search.json @@ -1 +1 @@ -{"Typealiases.html#/s:10Kingfisher11Transformer":{"name":"Transformer","abstract":"

    Transformer method which will be used in to provide a Filter.

    "},"Typealiases.html#/s:10Kingfisher21RetrieveImageDiskTask":{"name":"RetrieveImageDiskTask","abstract":"

    It represents a task of retrieving image. You can call cancel on it to stop the process.

    "},"Typealiases.html#/s:10Kingfisher28ImageDownloaderProgressBlock":{"name":"ImageDownloaderProgressBlock","abstract":"

    Progress update block of downloader.

    "},"Typealiases.html#/s:10Kingfisher32ImageDownloaderCompletionHandler":{"name":"ImageDownloaderCompletionHandler","abstract":"

    Completion block of downloader.

    "},"Typealiases.html#/s:10Kingfisher21KingfisherOptionsInfo":{"name":"KingfisherOptionsInfo","abstract":"

    KingfisherOptionsInfo is a typealias for [KingfisherOptionsInfoItem]. You can use the enum of option item with value to control some behaviors of Kingfisher.

    "},"Typealiases.html#/s:10Kingfisher23PrefetcherProgressBlock":{"name":"PrefetcherProgressBlock","abstract":"

    Progress update block of prefetcher.

    "},"Typealiases.html#/s:10Kingfisher27PrefetcherCompletionHandler":{"name":"PrefetcherCompletionHandler","abstract":"

    Completion block of prefetcher.

    "},"Structs/FormatIndicatedCacheSerializer.html#/s:ZvV10Kingfisher30FormatIndicatedCacheSerializer3pngS0_":{"name":"png","abstract":"

    Undocumented

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:ZvV10Kingfisher30FormatIndicatedCacheSerializer4jpegS0_":{"name":"jpeg","abstract":"

    Undocumented

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:ZvV10Kingfisher30FormatIndicatedCacheSerializer3gifS0_":{"name":"gif","abstract":"

    Undocumented

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:FP10Kingfisher15CacheSerializer4dataFT4withCSo7UIImage8originalGSqV10Foundation4Data__GSqS3__":{"name":"data(with:original:)","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:FV10Kingfisher30FormatIndicatedCacheSerializer5imageFT4withV10Foundation4Data7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"image(with:options:)","abstract":"

    Same implementation as DefaultCacheSerializer.

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/DefaultCacheSerializer.html#/s:ZvV10Kingfisher22DefaultCacheSerializer7defaultS0_":{"name":"default","abstract":"

    Undocumented

    ","parent_name":"DefaultCacheSerializer"},"Structs/DefaultCacheSerializer.html#/s:FP10Kingfisher15CacheSerializer4dataFT4withCSo7UIImage8originalGSqV10Foundation4Data__GSqS3__":{"name":"data(with:original:)","parent_name":"DefaultCacheSerializer"},"Structs/DefaultCacheSerializer.html#/s:FP10Kingfisher15CacheSerializer5imageFT4withV10Foundation4Data7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"image(with:options:)","parent_name":"DefaultCacheSerializer"},"Structs/ImageResource.html#/s:vV10Kingfisher13ImageResource8cacheKeySS":{"name":"cacheKey","abstract":"

    The key used in cache.

    ","parent_name":"ImageResource"},"Structs/ImageResource.html#/s:vV10Kingfisher13ImageResource11downloadURLV10Foundation3URL":{"name":"downloadURL","abstract":"

    The target image URL.

    ","parent_name":"ImageResource"},"Structs/ImageResource.html#/s:FV10Kingfisher13ImageResourcecFT11downloadURLV10Foundation3URL8cacheKeyGSqSS__S0_":{"name":"init(downloadURL:cacheKey:)","abstract":"

    Create a resource.

    ","parent_name":"ImageResource"},"Structs/CroppingImageProcessor.html#/s:vV10Kingfisher22CroppingImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:vV10Kingfisher22CroppingImageProcessor4sizeVSC6CGSize":{"name":"size","abstract":"

    Target size of output image should be.

    ","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:vV10Kingfisher22CroppingImageProcessor6anchorVSC7CGPoint":{"name":"anchor","abstract":"

    Anchor point from which the output size should be calculate.","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:FV10Kingfisher22CroppingImageProcessorcFT4sizeVSC6CGSize6anchorVSC7CGPoint_S0_":{"name":"init(size:anchor:)","abstract":"

    Initialize a CroppingImageProcessor

    ","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:FV10Kingfisher22CroppingImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"CroppingImageProcessor"},"Structs/BlackWhiteProcessor.html#/s:vV10Kingfisher19BlackWhiteProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"BlackWhiteProcessor"},"Structs/BlackWhiteProcessor.html#/s:FV10Kingfisher19BlackWhiteProcessorcFT_S0_":{"name":"init()","abstract":"

    Initialize a BlackWhiteProcessor

    ","parent_name":"BlackWhiteProcessor"},"Structs/BlackWhiteProcessor.html#/s:FV10Kingfisher19BlackWhiteProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"BlackWhiteProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor10brightnessV12CoreGraphics7CGFloat":{"name":"brightness","abstract":"

    Brightness changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor8contrastV12CoreGraphics7CGFloat":{"name":"contrast","abstract":"

    Contrast changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor10saturationV12CoreGraphics7CGFloat":{"name":"saturation","abstract":"

    Saturation changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor7inputEVV12CoreGraphics7CGFloat":{"name":"inputEV","abstract":"

    InputEV changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:FV10Kingfisher22ColorControlsProcessorcFT10brightnessV12CoreGraphics7CGFloat8contrastS2_10saturationS2_7inputEVS2__S0_":{"name":"init(brightness:contrast:saturation:inputEV:)","abstract":"

    Initialize a ColorControlsProcessor

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:FV10Kingfisher22ColorControlsProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"ColorControlsProcessor"},"Structs/TintImageProcessor.html#/s:vV10Kingfisher18TintImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"TintImageProcessor"},"Structs/TintImageProcessor.html#/s:vV10Kingfisher18TintImageProcessor4tintCSo7UIColor":{"name":"tint","abstract":"

    Tint color will be used to tint the input image.

    ","parent_name":"TintImageProcessor"},"Structs/TintImageProcessor.html#/s:FV10Kingfisher18TintImageProcessorcFT4tintCSo7UIColor_S0_":{"name":"init(tint:)","abstract":"

    Initialize a TintImageProcessor

    ","parent_name":"TintImageProcessor"},"Structs/TintImageProcessor.html#/s:FV10Kingfisher18TintImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"TintImageProcessor"},"Structs/OverlayImageProcessor.html#/s:vV10Kingfisher21OverlayImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:vV10Kingfisher21OverlayImageProcessor7overlayCSo7UIColor":{"name":"overlay","abstract":"

    Overlay color will be used to overlay the input image.

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:vV10Kingfisher21OverlayImageProcessor8fractionV12CoreGraphics7CGFloat":{"name":"fraction","abstract":"

    Fraction will be used when overlay the color to image.

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:FV10Kingfisher21OverlayImageProcessorcFT7overlayCSo7UIColor8fractionV12CoreGraphics7CGFloat_S0_":{"name":"init(overlay:fraction:)","abstract":"

    Initialize an OverlayImageProcessor

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:FV10Kingfisher21OverlayImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"OverlayImageProcessor"},"Structs/BlurImageProcessor.html#/s:vV10Kingfisher18BlurImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"BlurImageProcessor"},"Structs/BlurImageProcessor.html#/s:vV10Kingfisher18BlurImageProcessor10blurRadiusV12CoreGraphics7CGFloat":{"name":"blurRadius","abstract":"

    Blur radius for the simulated Gaussian blur.

    ","parent_name":"BlurImageProcessor"},"Structs/BlurImageProcessor.html#/s:FV10Kingfisher18BlurImageProcessorcFT10blurRadiusV12CoreGraphics7CGFloat_S0_":{"name":"init(blurRadius:)","abstract":"

    Initialize a BlurImageProcessor

    ","parent_name":"BlurImageProcessor"},"Structs/BlurImageProcessor.html#/s:FV10Kingfisher18BlurImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"BlurImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor13referenceSizeVSC6CGSize":{"name":"referenceSize","abstract":"

    The reference size for resizing operation.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor17targetContentModeOS_11ContentMode":{"name":"targetContentMode","abstract":"

    Target content mode of output image should be.","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:FV10Kingfisher22ResizingImageProcessorcFT13referenceSizeVSC6CGSize4modeOS_11ContentMode_S0_":{"name":"init(referenceSize:mode:)","abstract":"

    Initialize a ResizingImageProcessor.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:FV10Kingfisher22ResizingImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor10targetSizeVSC6CGSize":{"name":"targetSize","abstract":"

    Reference size of output image should follow.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:FV10Kingfisher22ResizingImageProcessorcFT10targetSizeVSC6CGSize11contentModeOS_11ContentMode_S0_":{"name":"init(targetSize:contentMode:)","abstract":"

    Initialize a ResizingImageProcessor

    ","parent_name":"ResizingImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor12cornerRadiusV12CoreGraphics7CGFloat":{"name":"cornerRadius","abstract":"

    Corner radius will be applied in processing.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor15roundingCornersVS_10RectCorner":{"name":"roundingCorners","abstract":"

    The target corners which will be applied rounding.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor10targetSizeGSqVSC6CGSize_":{"name":"targetSize","abstract":"

    Target size of output image should be. If nil, the image will keep its original size after processing.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:FV10Kingfisher25RoundCornerImageProcessorcFT12cornerRadiusV12CoreGraphics7CGFloat10targetSizeGSqVSC6CGSize_15roundingCornersVS_10RectCorner_S0_":{"name":"init(cornerRadius:targetSize:roundingCorners:)","abstract":"

    Initialize a RoundCornerImageProcessor

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:FV10Kingfisher25RoundCornerImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RectCorner.html#/s:vPs16RawRepresentable8rawValuewx8RawValue":{"name":"rawValue","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner7topLeftS0_":{"name":"topLeft","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner8topRightS0_":{"name":"topRight","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner10bottomLeftS0_":{"name":"bottomLeft","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner11bottomRightS0_":{"name":"bottomRight","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner3allS0_":{"name":"all","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:FPs9OptionSetcFT8rawValuewx8RawValue_x":{"name":"init(rawValue:)","parent_name":"RectCorner"},"Structs/DefaultImageProcessor.html#/s:ZvV10Kingfisher21DefaultImageProcessor7defaultS0_":{"name":"default","abstract":"

    A default DefaultImageProcessor could be used across.

    ","parent_name":"DefaultImageProcessor"},"Structs/DefaultImageProcessor.html#/s:vV10Kingfisher21DefaultImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"DefaultImageProcessor"},"Structs/DefaultImageProcessor.html#/s:FV10Kingfisher21DefaultImageProcessorcFT_S0_":{"name":"init()","abstract":"

    Initialize a DefaultImageProcessor

    ","parent_name":"DefaultImageProcessor"},"Structs/DefaultImageProcessor.html#/s:FV10Kingfisher21DefaultImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"DefaultImageProcessor"},"Structs/RetrieveImageDownloadTask.html#/s:vV10Kingfisher25RetrieveImageDownloadTask15ownerDownloaderXwGSqCS_15ImageDownloader_":{"name":"ownerDownloader","abstract":"

    Downloader by which this task is intialized.

    ","parent_name":"RetrieveImageDownloadTask"},"Structs/RetrieveImageDownloadTask.html#/s:FV10Kingfisher25RetrieveImageDownloadTask6cancelFT_T_":{"name":"cancel()","abstract":"

    Cancel this download task. It will trigger the completion handler with an NSURLErrorCancelled error.

    ","parent_name":"RetrieveImageDownloadTask"},"Structs/RetrieveImageDownloadTask.html#/s:vV10Kingfisher25RetrieveImageDownloadTask3urlGSqV10Foundation3URL_":{"name":"url","abstract":"

    The original request URL of this download task.

    ","parent_name":"RetrieveImageDownloadTask"},"Structs/RetrieveImageDownloadTask.html#/s:vV10Kingfisher25RetrieveImageDownloadTask8prioritySf":{"name":"priority","abstract":"

    The relative priority of this download task.","parent_name":"RetrieveImageDownloadTask"},"Structs/Filter.html#/s:FV10Kingfisher6FiltercFT8tranformFCSo7CIImageGSqS1___S0_":{"name":"init(tranform:)","abstract":"

    Undocumented

    ","parent_name":"Filter"},"Structs/Filter.html#/s:ZvV10Kingfisher6Filter4tintFCSo7UIColorS0_":{"name":"tint","abstract":"

    Tint filter which will apply a tint color to images.

    ","parent_name":"Filter"},"Structs/Filter.html#/s:ZvV10Kingfisher6Filter12colorControlFTV12CoreGraphics7CGFloatS2_S2_S2__S0_":{"name":"colorControl","abstract":"

    Color control filter which will apply color control change to images.

    ","parent_name":"Filter"},"Structs/AnyModifier.html#/s:FV10Kingfisher11AnyModifier8modifiedFT3forV10Foundation10URLRequest_GSqS2__":{"name":"modified(for:)","abstract":"

    Undocumented

    ","parent_name":"AnyModifier"},"Structs/AnyModifier.html#/s:FV10Kingfisher11AnyModifiercFT6modifyFV10Foundation10URLRequestGSqS2___S0_":{"name":"init(modify:)","abstract":"

    Undocumented

    ","parent_name":"AnyModifier"},"Structs.html#/s:V10Kingfisher9DataProxy":{"name":"DataProxy","abstract":"

    Undocumented

    "},"Structs.html#/s:V10Kingfisher11CGSizeProxy":{"name":"CGSizeProxy","abstract":"

    Undocumented

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

    Undocumented

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

    Wrapper for a Transformer of CIImage filters.

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

    Download task.

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

    The default processor. It convert the input data to a valid image."},"Structs/RectCorner.html":{"name":"RectCorner","abstract":"

    Undocumented

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

    Processor for making round corner images. Only CG-based images are supported in macOS,"},"Structs/ResizingImageProcessor.html":{"name":"ResizingImageProcessor","abstract":"

    Processor for resizing images. Only CG-based images are supported in macOS.

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

    Processor for adding blur effect to images. Accelerate.framework is used underhood for"},"Structs/OverlayImageProcessor.html":{"name":"OverlayImageProcessor","abstract":"

    Processor for adding an overlay to images. Only CG-based images are supported in macOS.

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

    Processor for tint images with color. Only CG-based images are supported.

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

    Processor for applying some color control to images. Only CG-based images are supported."},"Structs/BlackWhiteProcessor.html":{"name":"BlackWhiteProcessor","abstract":"

    Processor for applying black and white effect to images. Only CG-based images are supported."},"Structs/CroppingImageProcessor.html":{"name":"CroppingImageProcessor","abstract":"

    Processor for cropping an image. Only CG-based images are supported."},"Structs/ImageResource.html":{"name":"ImageResource","abstract":"

    ImageResource is a simple combination of downloadURL and cacheKey.

    "},"Structs.html#/s:V10Kingfisher11StringProxy":{"name":"StringProxy","abstract":"

    Undocumented

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

    DefaultCacheSerializer is a basic CacheSerializer used in default cache of"},"Structs/FormatIndicatedCacheSerializer.html":{"name":"FormatIndicatedCacheSerializer","abstract":"

    FormatIndicatedCacheSerializer let you indicate an image format for serialized caches.

    "},"Protocols/CacheSerializer.html#/s:FP10Kingfisher15CacheSerializer4dataFT4withCSo7UIImage8originalGSqV10Foundation4Data__GSqS3__":{"name":"data(with:original:)","abstract":"

    Get the serialized data from a provided image","parent_name":"CacheSerializer"},"Protocols/CacheSerializer.html#/s:FP10Kingfisher15CacheSerializer5imageFT4withV10Foundation4Data7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"image(with:options:)","abstract":"

    Get an image deserialized from provided data.

    ","parent_name":"CacheSerializer"},"Protocols/Resource.html#/s:vP10Kingfisher8Resource8cacheKeySS":{"name":"cacheKey","abstract":"

    The key used in cache.

    ","parent_name":"Resource"},"Protocols/Resource.html#/s:vP10Kingfisher8Resource11downloadURLV10Foundation3URL":{"name":"downloadURL","abstract":"

    The target image URL.

    ","parent_name":"Resource"},"Protocols/Indicator.html#/s:FP10Kingfisher9Indicator18startAnimatingViewFT_T_":{"name":"startAnimatingView()","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/Indicator.html#/s:FP10Kingfisher9Indicator17stopAnimatingViewFT_T_":{"name":"stopAnimatingView()","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/Indicator.html#/s:vP10Kingfisher9Indicator10viewCenterVSC7CGPoint":{"name":"viewCenter","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/Indicator.html#/s:vP10Kingfisher9Indicator4viewCSo6UIView":{"name":"view","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/ImageProcessor.html#/s:vP10Kingfisher14ImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor. It will be used to identify the processor when","parent_name":"ImageProcessor"},"Protocols/ImageProcessor.html#/s:FP10Kingfisher14ImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"ImageProcessor"},"Protocols/ImageProcessor.html#/s:FE10KingfisherPS_14ImageProcessor6appendFT7anotherPS0___PS0__":{"name":"append(another:)","abstract":"

    Append an ImageProcessor to another. The identifier of the new ImageProcessor","parent_name":"ImageProcessor"},"Protocols/AuthenticationChallengeResponsable.html#/s:FP10Kingfisher34AuthenticationChallengeResponsable10downloaderFTCS_15ImageDownloader10didReceiveCSo26URLAuthenticationChallenge17completionHandlerFTOCSo10URLSession24AuthChallengeDispositionGSqCSo13URLCredential__T__T_":{"name":"downloader(_:didReceive:completionHandler:)","abstract":"

    Called when an session level authentication challenge is received.","parent_name":"AuthenticationChallengeResponsable"},"Protocols/ImageDownloaderDelegate.html#/s:FP10Kingfisher23ImageDownloaderDelegate15imageDownloaderFTCS_15ImageDownloader11didDownloadCSo7UIImage3forV10Foundation3URL4withGSqCSo11URLResponse__T_":{"name":"imageDownloader(_:didDownload:for:with:)","abstract":"

    Called when the ImageDownloader object successfully downloaded an image from specified URL.

    ","parent_name":"ImageDownloaderDelegate"},"Protocols/ImageDownloaderDelegate.html#/s:FP10Kingfisher23ImageDownloaderDelegate15imageDownloaderFTCS_15ImageDownloader23willDownloadImageForURLV10Foundation3URL4withGSqVS2_10URLRequest__T_":{"name":"imageDownloader(_:willDownloadImageForURL:with:)","abstract":"

    Called when the ImageDownloader object starts to download an image from specified URL.

    ","parent_name":"ImageDownloaderDelegate"},"Protocols/ImageDownloaderDelegate.html#/s:FP10Kingfisher23ImageDownloaderDelegate17isValidStatusCodeFTSi3forCS_15ImageDownloader_Sb":{"name":"isValidStatusCode(_:for:)","abstract":"

    Check if a received HTTP status code is valid or not.","parent_name":"ImageDownloaderDelegate"},"Protocols/KingfisherCompatible.html#/s:vP10Kingfisher20KingfisherCompatible2kfwx14CompatibleType":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"KingfisherCompatible"},"Protocols/CIImageProcessor.html#/s:vP10Kingfisher16CIImageProcessor6filterVS_6Filter":{"name":"filter","abstract":"

    Undocumented

    ","parent_name":"CIImageProcessor"},"Protocols/CIImageProcessor.html#/s:FP10Kingfisher14ImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","parent_name":"CIImageProcessor"},"Protocols/ImageDownloadRequestModifier.html#/s:FP10Kingfisher28ImageDownloadRequestModifier8modifiedFT3forV10Foundation10URLRequest_GSqS2__":{"name":"modified(for:)","abstract":"

    Undocumented

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

    Request modifier of image downloader.

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

    Supply a filter to create an ImageProcessor.

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

    A type that has Kingfisher extensions.

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

    Protocol of ImageDownloader.

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

    Protocol indicates that an authentication challenge could be handled.

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

    An ImageProcessor would be used to convert some downloaded data to an image.

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

    Undocumented

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

    Resource protocol defines how to download and cache a resource from network.

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

    An CacheSerializer would be used to convert some data to an image object for"},"Functions.html#/s:F10Kingfisheroi2ggFTPS_14ImageProcessor_PS0___PS0__":{"name":">>(_:_:)","abstract":"

    Concatenate two ImageProcessors. ImageProcessor.appen(another:) is used internally.

    "},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton11kf_setImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqS3__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"kf_setImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image to use for a specified state with a resource, a placeholder image, options, progress handler and","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton26kf_cancelImageDownloadTaskFT_T_":{"name":"kf_cancelImageDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton21kf_setBackgroundImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqS3__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"kf_setBackgroundImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set the background image to use for a specified state with a resource,","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton36kf_cancelBackgroundImageDownloadTaskFT_T_":{"name":"kf_cancelBackgroundImageDownloadTask()","abstract":"

    Cancel the background image download task bounded to the image view if it is running.","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton9kf_webURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"kf_webURL(for:)","abstract":"

    Get the image URL binded to this button for a specified state.

    ","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton19kf_backgroundWebURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"kf_backgroundWebURL(for:)","abstract":"

    Get the background image URL binded to this button for a specified state.

    ","parent_name":"UIButton"},"Extensions/String.html#/s:vE10KingfisherSS2kfVS_11StringProxy":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"String"},"Extensions/URL.html#/s:vP10Kingfisher8Resource8cacheKeySS":{"name":"cacheKey","parent_name":"URL"},"Extensions/URL.html#/s:vP10Kingfisher8Resource11downloadURLV10Foundation3URL":{"name":"downloadURL","parent_name":"URL"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_11targetCacheCS_10ImageCache":{"name":"targetCache","abstract":"

    The target ImageCache which is used.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_10downloaderCS_15ImageDownloader":{"name":"downloader","abstract":"

    The ImageDownloader which is specified.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_10transitionOS_15ImageTransition":{"name":"transition","abstract":"

    Member for animation transition when using UIImageView.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_16downloadPrioritySf":{"name":"downloadPriority","abstract":"

    A Float value set as the priority of image download task. The value for it should be","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_12forceRefreshSb":{"name":"forceRefresh","abstract":"

    Whether an image will be always downloaded again or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_15forceTransitionSb":{"name":"forceTransition","abstract":"

    Whether the transition should always happen or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_15cacheMemoryOnlySb":{"name":"cacheMemoryOnly","abstract":"

    Whether cache the image only in memory or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_13onlyFromCacheSb":{"name":"onlyFromCache","abstract":"

    Whether only load the images from cache or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_16backgroundDecodeSb":{"name":"backgroundDecode","abstract":"

    Whether the image should be decoded in background or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_23preloadAllAnimationDataSb":{"name":"preloadAllAnimationData","abstract":"

    Whether the image data should be all loaded at once if it is an animated image.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_21callbackDispatchQueueCSo13DispatchQueue":{"name":"callbackDispatchQueue","abstract":"

    The queue of callbacks should happen from Kingfisher.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_11scaleFactorV12CoreGraphics7CGFloat":{"name":"scaleFactor","abstract":"

    The scale factor which should be used for the image.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_8modifierPS_28ImageDownloadRequestModifier_":{"name":"modifier","abstract":"

    The ImageDownloadRequestModifier will be used before sending a download request.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_9processorPS_14ImageProcessor_":{"name":"processor","abstract":"

    ImageProcessor for processing when the downloading finishes.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_15cacheSerializerPS_15CacheSerializer_":{"name":"cacheSerializer","abstract":"

    CacheSerializer to convert image to data for storing in cache.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_28keepCurrentImageWhileLoadingSb":{"name":"keepCurrentImageWhileLoading","abstract":"

    Keep the existing image while setting another image to an image view.","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_18onlyLoadFirstFrameSb":{"name":"onlyLoadFirstFrame","abstract":"

    Undocumented

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_18cacheOriginalImageSb":{"name":"cacheOriginalImage","abstract":"

    Undocumented

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_17preloadAllGIFDataSb":{"name":"preloadAllGIFData","abstract":"

    Whether the image data should be all loaded at once if it is a GIF.

    ","parent_name":"Collection"},"Extensions/ImageView.html#/s:FE10KingfisherCSo11UIImageView11kf_setImageFT4withGSqPS_8Resource__11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S4__T__17completionHandlerGSqFTGSqS2__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"kf_setImage(with:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image with a resource, a placeholder image, options, progress handler and completion handler.

    ","parent_name":"ImageView"},"Extensions/ImageView.html#/s:FE10KingfisherCSo11UIImageView21kf_cancelDownloadTaskFT_T_":{"name":"kf_cancelDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"ImageView"},"Extensions/ImageView.html#/s:vE10KingfisherCSo11UIImageView9kf_webURLGSqV10Foundation3URL_":{"name":"kf_webURL","abstract":"

    Get the image URL binded to this image view.

    ","parent_name":"ImageView"},"Extensions/ImageView.html#/s:vE10KingfisherCSo11UIImageView16kf_indicatorTypeOS_13IndicatorType":{"name":"kf_indicatorType","abstract":"

    Holds which indicator type is going to be used.","parent_name":"ImageView"},"Extensions/ImageView.html#/s:vE10KingfisherCSo11UIImageView12kf_indicatorGSqPS_9Indicator__":{"name":"kf_indicator","abstract":"

    Undocumented

    ","parent_name":"ImageView"},"Extensions/Notification.html#/s:ZvE10KingfisherVCSo14NSNotification4Name27KingfisherDidCleanDiskCacheS1_":{"name":"KingfisherDidCleanDiskCache","abstract":"

    This notification will be sent when the disk cache got cleaned either there are cached files expired or the total size exceeding the max allowed size. The manually invoking of clearDiskCache method will not trigger this notification.

    ","parent_name":"Notification"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage13kf_normalizedFT_S0_":{"name":"kf_normalized()","abstract":"

    Normalize the image. This method does nothing in OS X.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage8kf_imageFT15withRoundRadiusV12CoreGraphics7CGFloat3fitVSC6CGSize5scaleS2__S0_":{"name":"kf_image(withRoundRadius:fit:scale:)","abstract":"

    Create a round corner image based on self.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage9kf_resizeFT2toVSC6CGSize_S0_":{"name":"kf_resize(to:)","abstract":"

    Resize self to an image of new size.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage10kf_blurredFT10withRadiusV12CoreGraphics7CGFloat_S0_":{"name":"kf_blurred(withRadius:)","abstract":"

    Create an image with blur effect based on self.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage13kf_overlayingFT4withCSo7UIColor8fractionV12CoreGraphics7CGFloat_S0_":{"name":"kf_overlaying(with:fraction:)","abstract":"

    Create an image from self with a color overlay layer.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage9kf_tintedFT4withCSo7UIColor_S0_":{"name":"kf_tinted(with:)","abstract":"

    Create an image from self with a color tint.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage11kf_adjustedFT10brightnessV12CoreGraphics7CGFloat8contrastS2_10saturationS2_7inputEVS2__S0_":{"name":"kf_adjusted(brightness:contrast:saturation:inputEV:)","abstract":"

    Create an image from self with color control.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage8kf_applyFVS_6FilterS0_":{"name":"kf_apply(_:)","abstract":"

    Apply a Filter containing CIImage transformer to self.

    ","parent_name":"Image"},"Extensions/CGSize.html#/s:vE10KingfisherVSC6CGSize2kfVS_11CGSizeProxy":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"CGSize"},"Extensions/Data.html#/s:vE10KingfisherV10Foundation4Data2kfVS_9DataProxy":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"Data"},"Extensions/Data.html":{"name":"Data","abstract":"

    Undocumented

    "},"Extensions/CGSize.html":{"name":"CGSize","abstract":"

    Undocumented

    "},"Extensions/Image.html":{"name":"Image","abstract":"

    Undocumented

    "},"Extensions/Notification.html":{"name":"Notification"},"Extensions/ImageView.html":{"name":"ImageView","abstract":"

    Undocumented

    "},"Extensions/Collection.html":{"name":"Collection"},"Extensions/URL.html":{"name":"URL","abstract":"

    URL conforms to Resource in Kingfisher."},"Extensions/String.html":{"name":"String"},"Extensions/UIButton.html":{"name":"UIButton","abstract":"

    Undocumented

    "},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem11targetCacheFMS0_FCS_10ImageCacheS0_":{"name":"targetCache","abstract":"

    The associated value of this member should be an ImageCache object. Kingfisher will use the specified","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem10downloaderFMS0_FCS_15ImageDownloaderS0_":{"name":"downloader","abstract":"

    The associated value of this member should be an ImageDownloader object. Kingfisher will use this","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem10transitionFMS0_FOS_15ImageTransitionS0_":{"name":"transition","abstract":"

    Member for animation transition when using UIImageView. Kingfisher will use the ImageTransition of","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem16downloadPriorityFMS0_FSfS0_":{"name":"downloadPriority","abstract":"

    Associated Float value will be set as the priority of image download task. The value for it should be","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem12forceRefreshFMS0_S0_":{"name":"forceRefresh","abstract":"

    If set, Kingfisher will ignore the cache and try to fire a download task for the resource.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15forceTransitionFMS0_S0_":{"name":"forceTransition","abstract":"

    If set, setting the image to an image view will happen with transition even when retrieved from cache.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15cacheMemoryOnlyFMS0_S0_":{"name":"cacheMemoryOnly","abstract":"

    If set, Kingfisher will only cache the value in memory but not in disk.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem13onlyFromCacheFMS0_S0_":{"name":"onlyFromCache","abstract":"

    If set, Kingfisher will only try to retrieve the image from cache not from network.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem16backgroundDecodeFMS0_S0_":{"name":"backgroundDecode","abstract":"

    Decode the image in background thread before using.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem21callbackDispatchQueueFMS0_FGSqCSo13DispatchQueue_S0_":{"name":"callbackDispatchQueue","abstract":"

    The associated value of this member will be used as the target queue of dispatch callbacks when","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem11scaleFactorFMS0_FV12CoreGraphics7CGFloatS0_":{"name":"scaleFactor","abstract":"

    The associated value of this member will be used as the scale factor when converting retrieved data to an image.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem23preloadAllAnimationDataFMS0_S0_":{"name":"preloadAllAnimationData","abstract":"

    Whether all the animated image data should be preloaded. Default it false, which means following frames will be","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15requestModifierFMS0_FPS_28ImageDownloadRequestModifier_S0_":{"name":"requestModifier","abstract":"

    The ImageDownloadRequestModifier contained will be used to change the request before it being sent.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem9processorFMS0_FPS_14ImageProcessor_S0_":{"name":"processor","abstract":"

    Processor for processing when the downloading finishes, a processor will convert the downloaded data to an image","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15cacheSerializerFMS0_FPS_15CacheSerializer_S0_":{"name":"cacheSerializer","abstract":"

    Supply an CacheSerializer to convert some data to an image object for","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem28keepCurrentImageWhileLoadingFMS0_S0_":{"name":"keepCurrentImageWhileLoading","abstract":"

    Keep the existing image while setting another image to an image view.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem18onlyLoadFirstFrameFMS0_S0_":{"name":"onlyLoadFirstFrame","abstract":"

    If set, Kingfisher will only load the first frame from a animated image data file as a single image.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem18cacheOriginalImageFMS0_S0_":{"name":"cacheOriginalImage","abstract":"

    If set and an ImageProcessor is used, Kingfisher will try to cache both","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:ZvO10Kingfisher25KingfisherOptionsInfoItem17preloadAllGIFDataS0_":{"name":"preloadAllGIFData","abstract":"

    Undocumented

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition4noneFMS0_S0_":{"name":"none","abstract":"

    No animation transistion.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition4fadeFMS0_FSdS0_":{"name":"fade","abstract":"

    Fade in the loaded image.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition12flipFromLeftFMS0_FSdS0_":{"name":"flipFromLeft","abstract":"

    Flip from left transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition13flipFromRightFMS0_FSdS0_":{"name":"flipFromRight","abstract":"

    Flip from right transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition11flipFromTopFMS0_FSdS0_":{"name":"flipFromTop","abstract":"

    Flip from top transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition14flipFromBottomFMS0_FSdS0_":{"name":"flipFromBottom","abstract":"

    Flip from bottom transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition6customFMS0_FT8durationSd7optionsVSC22UIViewAnimationOptions10animationsGSqFTCSo11UIImageViewCSo7UIImage_T__10completionGSqFSbT___S0_":{"name":"custom","abstract":"

    Custom transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/none":{"name":"none","abstract":"

    Undocumented

    ","parent_name":"ImageTransition"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType4noneFMS0_S0_":{"name":"none","abstract":"

    No indicator.

    ","parent_name":"IndicatorType"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType8activityFMS0_S0_":{"name":"activity","abstract":"

    Use system activity indicator.

    ","parent_name":"IndicatorType"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType5imageFMS0_FT9imageDataV10Foundation4Data_S0_":{"name":"image","abstract":"

    Use an image as indicator. GIF is supported.

    ","parent_name":"IndicatorType"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType6customFMS0_FT9indicatorPS_9Indicator__S0_":{"name":"custom","abstract":"

    Use a custom indicator, which conforms to the Indicator protocol.

    ","parent_name":"IndicatorType"},"Enums/ContentMode.html#/s:FO10Kingfisher11ContentMode4noneFMS0_S0_":{"name":"none","abstract":"

    Undocumented

    ","parent_name":"ContentMode"},"Enums/ContentMode.html#/s:FO10Kingfisher11ContentMode9aspectFitFMS0_S0_":{"name":"aspectFit","abstract":"

    Undocumented

    ","parent_name":"ContentMode"},"Enums/ContentMode.html#/s:FO10Kingfisher11ContentMode10aspectFillFMS0_S0_":{"name":"aspectFill","abstract":"

    Undocumented

    ","parent_name":"ContentMode"},"Enums/ImageProcessItem.html#/s:FO10Kingfisher16ImageProcessItem5imageFMS0_FCSo7UIImageS0_":{"name":"image","abstract":"

    Undocumented

    ","parent_name":"ImageProcessItem"},"Enums/ImageProcessItem.html#/s:FO10Kingfisher16ImageProcessItem4dataFMS0_FV10Foundation4DataS0_":{"name":"data","abstract":"

    Undocumented

    ","parent_name":"ImageProcessItem"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError7badDataFMS0_S0_":{"name":"badData","abstract":"

    badData: The downloaded data is not an image or the data is corrupted.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError11notModifiedFMS0_S0_":{"name":"notModified","abstract":"

    notModified: The remote server responsed a 304 code. No image data downloaded.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError17invalidStatusCodeFMS0_S0_":{"name":"invalidStatusCode","abstract":"

    The HTTP status code in response is not valid. If an invalid","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError9notCachedFMS0_S0_":{"name":"notCached","abstract":"

    notCached: The image rquested is not in cache but .onlyFromCache is activated.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError10invalidURLFMS0_S0_":{"name":"invalidURL","abstract":"

    The URL is invalid.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError31downloadCancelledBeforeStartingFMS0_S0_":{"name":"downloadCancelledBeforeStarting","abstract":"

    The downloading task is cancelled before started.

    ","parent_name":"KingfisherError"},"Enums/CacheType.html#/s:FO10Kingfisher9CacheType4noneFMS0_S0_":{"name":"none","abstract":"

    Undocumented

    ","parent_name":"CacheType"},"Enums/CacheType.html#/s:FO10Kingfisher9CacheType6memoryFMS0_S0_":{"name":"memory","abstract":"

    Undocumented

    ","parent_name":"CacheType"},"Enums/CacheType.html#/s:FO10Kingfisher9CacheType4diskFMS0_S0_":{"name":"disk","abstract":"

    Undocumented

    ","parent_name":"CacheType"},"Enums/CacheType.html":{"name":"CacheType","abstract":"

    Cache type of a cached image.

    "},"Enums/KingfisherError.html":{"name":"KingfisherError","abstract":"

    The code of errors which ImageDownloader might encountered.

    "},"Enums/ImageProcessItem.html":{"name":"ImageProcessItem","abstract":"

    The item which could be processed by an ImageProcessor

    "},"Enums/ContentMode.html":{"name":"ContentMode","abstract":"

    Specify how a size adjusts itself to fit a target size.

    "},"Enums/IndicatorType.html":{"name":"IndicatorType","abstract":"

    Undocumented

    "},"Enums/ImageTransition.html":{"name":"ImageTransition","abstract":"

    Transition effect which will be used when an image downloaded and set by UIImageView extension API in Kingfisher."},"Enums/KingfisherOptionsInfoItem.html":{"name":"KingfisherOptionsInfoItem","abstract":"

    Items could be added into KingfisherOptionsInfo.

    "},"Global Variables.html#/s:v10Kingfisher33KingfisherDiskCacheCleanedHashKeySS":{"name":"KingfisherDiskCacheCleanedHashKey","abstract":"

    Key for array of cleaned hashes in userInfo of KingfisherDidCleanDiskCacheNotification.

    "},"Global Variables.html#/s:v10Kingfisher28KingfisherErrorStatusCodeKeySS":{"name":"KingfisherErrorStatusCodeKey","abstract":"

    Key will be used in the userInfo of .invalidStatusCode

    "},"Global Variables.html#/s:v10Kingfisher21KingfisherErrorDomainSS":{"name":"KingfisherErrorDomain","abstract":"

    Error domain of Kingfisher

    "},"Classes/ImagePrefetcher.html#/s:vC10Kingfisher15ImagePrefetcher22maxConcurrentDownloadsSi":{"name":"maxConcurrentDownloads","abstract":"

    The maximum concurrent downloads to use when prefetching images. Default is 5.

    ","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetchercFT4urlsGSaV10Foundation3URL_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTGSaPS_8Resource__GSaPS4___GSaPS4____T__17completionHandlerGSqFTGSaPS4___GSaPS4___GSaPS4____T___S0_":{"name":"init(urls:options:progressBlock:completionHandler:)","abstract":"

    Init an image prefetcher with an array of URLs.

    ","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetchercFT9resourcesGSaPS_8Resource__7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTGSaPS1___GSaPS1___GSaPS1____T__17completionHandlerGSqFTGSaPS1___GSaPS1___GSaPS1____T___S0_":{"name":"init(resources:options:progressBlock:completionHandler:)","abstract":"

    Init an image prefetcher with an array of resources.

    ","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetcher5startFT_T_":{"name":"start()","abstract":"

    Start to download the resources and cache them. This can be useful for background downloading","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetcher4stopFT_T_":{"name":"stop()","abstract":"

    Stop current downloading progress, and cancel any future prefetching activity that might be occuring.

    ","parent_name":"ImagePrefetcher"},"Classes/KingfisherManager.html#/s:ZvC10Kingfisher17KingfisherManager6sharedS0_":{"name":"shared","abstract":"

    Shared manager used by the extensions across Kingfisher.

    ","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:vC10Kingfisher17KingfisherManager5cacheCS_10ImageCache":{"name":"cache","abstract":"

    Cache used by this manager

    ","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:vC10Kingfisher17KingfisherManager10downloaderCS_15ImageDownloader":{"name":"downloader","abstract":"

    Downloader used by this manager

    ","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:vC10Kingfisher17KingfisherManager14defaultOptionsGSaOS_25KingfisherOptionsInfoItem_":{"name":"defaultOptions","abstract":"

    Default options used by the manager. This option will be used in","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:FC10Kingfisher17KingfisherManager13retrieveImageFT4withPS_8Resource_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S3__T__17completionHandlerGSqFTGSqCSo7UIImage_GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"retrieveImage(with:options:progressBlock:completionHandler:)","abstract":"

    Get an image with resource.","parent_name":"KingfisherManager"},"Classes/RetrieveImageTask.html#/s:ZvC10Kingfisher17RetrieveImageTask5emptyS0_":{"name":"empty","abstract":"

    Undocumented

    ","parent_name":"RetrieveImageTask"},"Classes/RetrieveImageTask.html#/s:vC10Kingfisher17RetrieveImageTask16diskRetrieveTaskGSqC8Dispatch16DispatchWorkItem_":{"name":"diskRetrieveTask","abstract":"

    The disk retrieve task in this image task. Kingfisher will try to look up in cache first. This task represent the cache search task.

    ","parent_name":"RetrieveImageTask"},"Classes/RetrieveImageTask.html#/s:vC10Kingfisher17RetrieveImageTask12downloadTaskGSqVS_25RetrieveImageDownloadTask_":{"name":"downloadTask","abstract":"

    The network retrieve task in this image task.

    ","parent_name":"RetrieveImageTask"},"Classes/RetrieveImageTask.html#/s:FC10Kingfisher17RetrieveImageTask6cancelFT_T_":{"name":"cancel()","abstract":"

    Cancel current task. If this task is already done, do nothing.

    ","parent_name":"RetrieveImageTask"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader15downloadTimeoutSd":{"name":"downloadTimeout","abstract":"

    The duration before the download is timeout. Default is 15 seconds.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader12trustedHostsGSqGVs3SetSS__":{"name":"trustedHosts","abstract":"

    A set of trusted hosts when receiving server trust challenges. A challenge with host name contained in this set will be ignored.","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader20sessionConfigurationCSo23URLSessionConfiguration":{"name":"sessionConfiguration","abstract":"

    Use this to set supply a configuration for the downloader. By default, NSURLSessionConfiguration.ephemeralSessionConfiguration() will be used.","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader21requestsUsePipeliningSb":{"name":"requestsUsePipelining","abstract":"

    Whether the download requests should use pipeling or not. Default is false.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader8delegateXwGSqPS_23ImageDownloaderDelegate__":{"name":"delegate","abstract":"

    Delegate of this ImageDownloader object. See ImageDownloaderDelegate protocol for more.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader32authenticationChallengeResponderXwGSqPS_34AuthenticationChallengeResponsable__":{"name":"authenticationChallengeResponder","abstract":"

    A responder for authentication challenge.","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:ZvC10Kingfisher15ImageDownloader7defaultS0_":{"name":"default","abstract":"

    The default downloader.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:FC10Kingfisher15ImageDownloadercFT4nameSS_S0_":{"name":"init(name:)","abstract":"

    Init a downloader with name.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:FC10Kingfisher15ImageDownloader13downloadImageFT4withV10Foundation3URL17retrieveImageTaskGSqCS_17RetrieveImageTask_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqCSo7UIImage_GSqCSo7NSError_GSqS2__GSqVS1_4Data__T___GSqVS_25RetrieveImageDownloadTask_":{"name":"downloadImage(with:retrieveImageTask:options:progressBlock:completionHandler:)","abstract":"

    Download an image with a URL and option.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader19requestsUsePipelingSb":{"name":"requestsUsePipeling","abstract":"

    Undocumented

    ","parent_name":"ImageDownloader"},"Classes/ImageCache/CacheCheckResult.html#/s:vVC10Kingfisher10ImageCache16CacheCheckResult6cachedSb":{"name":"cached","abstract":"

    Undocumented

    ","parent_name":"CacheCheckResult"},"Classes/ImageCache/CacheCheckResult.html#/s:vVC10Kingfisher10ImageCache16CacheCheckResult9cacheTypeGSqOS_9CacheType_":{"name":"cacheType","abstract":"

    Undocumented

    ","parent_name":"CacheCheckResult"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache13maxMemoryCostSu":{"name":"maxMemoryCost","abstract":"

    The largest cache cost of memory cache. The total cost is pixel count of","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache13diskCachePathSS":{"name":"diskCachePath","abstract":"

    The disk cache location.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache13pathExtensionGSqSS_":{"name":"pathExtension","abstract":"

    The default file extension appended to cached files.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache22maxCachePeriodInSecondSd":{"name":"maxCachePeriodInSecond","abstract":"

    The longest time duration in second of the cache being stored in disk.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache16maxDiskCacheSizeSu":{"name":"maxDiskCacheSize","abstract":"

    The largest disk size can be taken for the cache. It is the total","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:ZvC10Kingfisher10ImageCache7defaultS0_":{"name":"default","abstract":"

    The default cache.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:C10Kingfisher10ImageCache20DiskCachePathClosure":{"name":"DiskCachePathClosure","abstract":"

    Closure that defines the disk cache path from a given path and cacheName.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:ZFC10Kingfisher10ImageCache27defaultDiskCachePathClosureFT4pathGSqSS_9cacheNameSS_SS":{"name":"defaultDiskCachePathClosure(path:cacheName:)","abstract":"

    The default DiskCachePathClosure

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCachecFT4nameSS4pathGSqSS_20diskCachePathClosureFTGSqSS_SS_SS_S0_":{"name":"init(name:path:diskCachePathClosure:)","abstract":"

    Init method. Passing a name for the cache. It represents a cache folder in the memory and disk.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache5storeFTCSo7UIImage8originalGSqV10Foundation4Data_6forKeySS19processorIdentifierSS15cacheSerializerPS_15CacheSerializer_6toDiskSb17completionHandlerGSqFT_T___T_":{"name":"store(_:original:forKey:processorIdentifier:cacheSerializer:toDisk:completionHandler:)","abstract":"

    Store an image to cache. It will be saved to both memory and disk. It is an async operation.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache11removeImageFT6forKeySS19processorIdentifierSS8fromDiskSb17completionHandlerGSqFT_T___T_":{"name":"removeImage(forKey:processorIdentifier:fromDisk:completionHandler:)","abstract":"

    Remove the image for key for the cache. It will be opted out from both memory and disk.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache13retrieveImageFT6forKeySS7optionsGSqGSaOS_25KingfisherOptionsInfoItem__17completionHandlerGSqFTGSqCSo7UIImage_OS_9CacheType_T___GSqC8Dispatch16DispatchWorkItem_":{"name":"retrieveImage(forKey:options:completionHandler:)","abstract":"

    Get an image for a key from memory or disk.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache26retrieveImageInMemoryCacheFT6forKeySS7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"retrieveImageInMemoryCache(forKey:options:)","abstract":"

    Get an image for a key from memory.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache24retrieveImageInDiskCacheFT6forKeySS7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"retrieveImageInDiskCache(forKey:options:)","abstract":"

    Get an image for a key from disk.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache16clearMemoryCacheFT_T_":{"name":"clearMemoryCache()","abstract":"

    Clear memory cache.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache14clearDiskCacheFT10completionGSqFT_T___T_":{"name":"clearDiskCache(completion:)","abstract":"

    Clear disk cache. This is an async operation.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache21cleanExpiredDiskCacheFT10completionGSqFT_T___T_":{"name":"cleanExpiredDiskCache(completion:)","abstract":"

    Clean expired disk cache. This is an async operation.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache31backgroundCleanExpiredDiskCacheFT_T_":{"name":"backgroundCleanExpiredDiskCache()","abstract":"

    Clean expired disk cache when app in background. This is an async operation.","parent_name":"ImageCache"},"Classes/ImageCache/CacheCheckResult.html":{"name":"CacheCheckResult","abstract":"

    Cache result for checking whether an image is cached for a key.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache13isImageCachedFT6forKeySS19processorIdentifierSS_VS0_16CacheCheckResult":{"name":"isImageCached(forKey:processorIdentifier:)","abstract":"

    Check whether an image is cached for a key.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache4hashFT6forKeySS19processorIdentifierSS_SS":{"name":"hash(forKey:processorIdentifier:)","abstract":"

    Get the hash for the key. This could be used for matching files.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache22calculateDiskCacheSizeFT10completionFSuT__T_":{"name":"calculateDiskCacheSize(completion:)","abstract":"

    Calculate the disk size taken by cache.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache9cachePathFT6forKeySS19processorIdentifierSS_SS":{"name":"cachePath(forKey:processorIdentifier:)","abstract":"

    Get the cache path for the key.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache9cachePathFT14forComputedKeySS_SS":{"name":"cachePath(forComputedKey:)","abstract":"

    Undocumented

    ","parent_name":"ImageCache"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView21autoPlayAnimatedImageSb":{"name":"autoPlayAnimatedImage","abstract":"

    Whether automatically play the animation when the view become visible. Default is true.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView17framePreloadCountSi":{"name":"framePreloadCount","abstract":"

    The size of the frame cache.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView15needsPrescalingSb":{"name":"needsPrescaling","abstract":"

    Specifies whether the GIF frames should be pre-scaled to save memory. Default is true.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView11runLoopModeVSC11RunLoopMode":{"name":"runLoopMode","abstract":"

    The animation timer’s run loop mode. Default is NSRunLoopCommonModes. Set this property to NSDefaultRunLoopMode will make the animation pause during UIScrollView scrolling.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView5imageGSqCSo7UIImage_":{"name":"image","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView11isAnimatingSb":{"name":"isAnimating","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView14startAnimatingFT_T_":{"name":"startAnimating()","abstract":"

    Starts the animation.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView13stopAnimatingFT_T_":{"name":"stopAnimating()","abstract":"

    Stops the animation.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView7displayFCSo7CALayerT_":{"name":"display(_:)","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView15didMoveToWindowFT_T_":{"name":"didMoveToWindow()","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView18didMoveToSuperviewFT_T_":{"name":"didMoveToSuperview()","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/Kingfisher.html#/s:vC10Kingfisher10Kingfisher4basex":{"name":"base","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:FC10Kingfisher10KingfishercFxGS0_x_":{"name":"init(_:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/normalized":{"name":"normalized","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo7UIImagerCS_10Kingfisher10normalizedS0_":{"name":"normalized","abstract":"

    Normalize the image. This method will try to redraw an image with orientation and scale considered.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher17pngRepresentationFT_GSqV10Foundation4Data_":{"name":"pngRepresentation()","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher18jpegRepresentationFT18compressionQualityV12CoreGraphics7CGFloat_GSqV10Foundation4Data_":{"name":"jpegRepresentation(compressionQuality:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher17gifRepresentationFT_GSqV10Foundation4Data_":{"name":"gifRepresentation()","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher5imageFT15withRoundRadiusV12CoreGraphics7CGFloat3fitVSC6CGSize15roundingCornersVS_10RectCorner_S0_":{"name":"image(withRoundRadius:fit:roundingCorners:)","abstract":"

    Create a round corner image based on self.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher6resizeFT2toVSC6CGSize_S0_":{"name":"resize(to:)","abstract":"

    Resize self to an image of new size.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher6resizeFT2toVSC6CGSize3forOS_11ContentMode_S0_":{"name":"resize(to:for:)","abstract":"

    Resize self to an image of new size, respecting the content mode.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher4cropFT2toVSC6CGSize8anchorOnVSC7CGPoint_S0_":{"name":"crop(to:anchorOn:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher7blurredFT10withRadiusV12CoreGraphics7CGFloat_S0_":{"name":"blurred(withRadius:)","abstract":"

    Create an image with blur effect based on self.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher10overlayingFT4withCSo7UIColor8fractionV12CoreGraphics7CGFloat_S0_":{"name":"overlaying(with:fraction:)","abstract":"

    Create an image from self with a color overlay layer.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher6tintedFT4withCSo7UIColor_S0_":{"name":"tinted(with:)","abstract":"

    Create an image from self with a color tint.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher8adjustedFT10brightnessV12CoreGraphics7CGFloat8contrastS3_10saturationS3_7inputEVS3__S0_":{"name":"adjusted(brightness:contrast:saturation:inputEV:)","abstract":"

    Create an image from self with color control.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher5imageFT15withRoundRadiusV12CoreGraphics7CGFloat3fitVSC6CGSize5scaleS3__S0_":{"name":"image(withRoundRadius:fit:scale:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher5applyFVS_6FilterS0_":{"name":"apply(_:)","abstract":"

    Apply a Filter containing CIImage transformer to self.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Zve10KingfisherRxCSo13UIApplicationrCS_10Kingfisher6sharedGSqS0__":{"name":"shared","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo11UIImageViewrCS_10Kingfisher8setImageFT4withGSqPS_8Resource__11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqS3__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"setImage(with:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image with a resource, a placeholder image, options, progress handler and completion handler.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo11UIImageViewrCS_10Kingfisher18cancelDownloadTaskFT_T_":{"name":"cancelDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo11UIImageViewrCS_10Kingfisher6webURLGSqV10Foundation3URL_":{"name":"webURL","abstract":"

    Get the image URL binded to this image view.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo11UIImageViewrCS_10Kingfisher13indicatorTypeOS_13IndicatorType":{"name":"indicatorType","abstract":"

    Holds which indicator type is going to be used.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo11UIImageViewrCS_10Kingfisher9indicatorGSqPS_9Indicator__":{"name":"indicator","abstract":"

    Holds any type that conforms to the protocol Indicator.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher8setImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S6__T__17completionHandlerGSqFTGSqS4__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"setImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image to use for a specified state with a resource, a placeholder image, options, progress handler and","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher23cancelImageDownloadTaskFT_T_":{"name":"cancelImageDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher18setBackgroundImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S6__T__17completionHandlerGSqFTGSqS4__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"setBackgroundImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set the background image to use for a specified state with a resource,","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher33cancelBackgroundImageDownloadTaskFT_T_":{"name":"cancelBackgroundImageDownloadTask()","abstract":"

    Cancel the background image download task bounded to the image view if it is running.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher6webURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"webURL(for:)","abstract":"

    Get the image URL binded to this button for a specified state.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher16backgroundWebURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"backgroundWebURL(for:)","abstract":"

    Get the background image URL binded to this button for a specified state.

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

    Undocumented

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

    AnimatedImageView is a subclass of UIImageView for displaying animated image.

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

    ImageCache represents both the memory and disk cache system of Kingfisher."},"Classes/ImageDownloader.html":{"name":"ImageDownloader","abstract":"

    ImageDownloader represents a downloading manager for requesting the image with a URL from server.

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

    RetrieveImageTask represents a task of image retrieving process."},"Classes/KingfisherManager.html":{"name":"KingfisherManager","abstract":"

    Main manager class of Kingfisher. It connects Kingfisher downloader and cache."},"Classes/ImagePrefetcher.html":{"name":"ImagePrefetcher","abstract":"

    ImagePrefetcher represents a downloading manager for requesting many images via URLs, then caching them."},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Global Variables.html":{"name":"Global Variables","abstract":"

    The following global variables are available globally.

    "},"Enums.html":{"name":"Enums","abstract":"

    The following enums are available globally.

    "},"Extensions.html":{"name":"Extensions","abstract":"

    The following extensions are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

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

    The following protocols are available globally.

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

    The following structs are available globally.

    "},"Typealiases.html":{"name":"Typealiases","abstract":"

    The following typealiases are available globally.

    "}} \ No newline at end of file +{"Typealiases.html#/s:10Kingfisher11Transformer":{"name":"Transformer","abstract":"

    Transformer method which will be used in to provide a Filter.

    "},"Typealiases.html#/s:10Kingfisher21RetrieveImageDiskTask":{"name":"RetrieveImageDiskTask","abstract":"

    It represents a task of retrieving image. You can call cancel on it to stop the process.

    "},"Typealiases.html#/s:10Kingfisher28ImageDownloaderProgressBlock":{"name":"ImageDownloaderProgressBlock","abstract":"

    Progress update block of downloader.

    "},"Typealiases.html#/s:10Kingfisher32ImageDownloaderCompletionHandler":{"name":"ImageDownloaderCompletionHandler","abstract":"

    Completion block of downloader.

    "},"Typealiases.html#/s:10Kingfisher21KingfisherOptionsInfo":{"name":"KingfisherOptionsInfo","abstract":"

    KingfisherOptionsInfo is a typealias for [KingfisherOptionsInfoItem]. You can use the enum of option item with value to control some behaviors of Kingfisher.

    "},"Typealiases.html#/s:10Kingfisher23PrefetcherProgressBlock":{"name":"PrefetcherProgressBlock","abstract":"

    Progress update block of prefetcher.

    "},"Typealiases.html#/s:10Kingfisher27PrefetcherCompletionHandler":{"name":"PrefetcherCompletionHandler","abstract":"

    Completion block of prefetcher.

    "},"Structs/FormatIndicatedCacheSerializer.html#/s:ZvV10Kingfisher30FormatIndicatedCacheSerializer3pngS0_":{"name":"png","abstract":"

    Undocumented

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:ZvV10Kingfisher30FormatIndicatedCacheSerializer4jpegS0_":{"name":"jpeg","abstract":"

    Undocumented

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:ZvV10Kingfisher30FormatIndicatedCacheSerializer3gifS0_":{"name":"gif","abstract":"

    Undocumented

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:FP10Kingfisher15CacheSerializer4dataFT4withCSo7UIImage8originalGSqV10Foundation4Data__GSqS3__":{"name":"data(with:original:)","parent_name":"FormatIndicatedCacheSerializer"},"Structs/FormatIndicatedCacheSerializer.html#/s:FV10Kingfisher30FormatIndicatedCacheSerializer5imageFT4withV10Foundation4Data7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"image(with:options:)","abstract":"

    Same implementation as DefaultCacheSerializer.

    ","parent_name":"FormatIndicatedCacheSerializer"},"Structs/DefaultCacheSerializer.html#/s:ZvV10Kingfisher22DefaultCacheSerializer7defaultS0_":{"name":"default","abstract":"

    Undocumented

    ","parent_name":"DefaultCacheSerializer"},"Structs/DefaultCacheSerializer.html#/s:FP10Kingfisher15CacheSerializer4dataFT4withCSo7UIImage8originalGSqV10Foundation4Data__GSqS3__":{"name":"data(with:original:)","parent_name":"DefaultCacheSerializer"},"Structs/DefaultCacheSerializer.html#/s:FP10Kingfisher15CacheSerializer5imageFT4withV10Foundation4Data7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"image(with:options:)","parent_name":"DefaultCacheSerializer"},"Structs/ImageResource.html#/s:vV10Kingfisher13ImageResource8cacheKeySS":{"name":"cacheKey","abstract":"

    The key used in cache.

    ","parent_name":"ImageResource"},"Structs/ImageResource.html#/s:vV10Kingfisher13ImageResource11downloadURLV10Foundation3URL":{"name":"downloadURL","abstract":"

    The target image URL.

    ","parent_name":"ImageResource"},"Structs/ImageResource.html#/s:FV10Kingfisher13ImageResourcecFT11downloadURLV10Foundation3URL8cacheKeyGSqSS__S0_":{"name":"init(downloadURL:cacheKey:)","abstract":"

    Create a resource.

    ","parent_name":"ImageResource"},"Structs/CroppingImageProcessor.html#/s:vV10Kingfisher22CroppingImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:vV10Kingfisher22CroppingImageProcessor4sizeVSC6CGSize":{"name":"size","abstract":"

    Target size of output image should be.

    ","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:vV10Kingfisher22CroppingImageProcessor6anchorVSC7CGPoint":{"name":"anchor","abstract":"

    Anchor point from which the output size should be calculate.","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:FV10Kingfisher22CroppingImageProcessorcFT4sizeVSC6CGSize6anchorVSC7CGPoint_S0_":{"name":"init(size:anchor:)","abstract":"

    Initialize a CroppingImageProcessor

    ","parent_name":"CroppingImageProcessor"},"Structs/CroppingImageProcessor.html#/s:FV10Kingfisher22CroppingImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"CroppingImageProcessor"},"Structs/BlackWhiteProcessor.html#/s:vV10Kingfisher19BlackWhiteProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"BlackWhiteProcessor"},"Structs/BlackWhiteProcessor.html#/s:FV10Kingfisher19BlackWhiteProcessorcFT_S0_":{"name":"init()","abstract":"

    Initialize a BlackWhiteProcessor

    ","parent_name":"BlackWhiteProcessor"},"Structs/BlackWhiteProcessor.html#/s:FV10Kingfisher19BlackWhiteProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"BlackWhiteProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor10brightnessV12CoreGraphics7CGFloat":{"name":"brightness","abstract":"

    Brightness changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor8contrastV12CoreGraphics7CGFloat":{"name":"contrast","abstract":"

    Contrast changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor10saturationV12CoreGraphics7CGFloat":{"name":"saturation","abstract":"

    Saturation changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:vV10Kingfisher22ColorControlsProcessor7inputEVV12CoreGraphics7CGFloat":{"name":"inputEV","abstract":"

    InputEV changing to image.

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:FV10Kingfisher22ColorControlsProcessorcFT10brightnessV12CoreGraphics7CGFloat8contrastS2_10saturationS2_7inputEVS2__S0_":{"name":"init(brightness:contrast:saturation:inputEV:)","abstract":"

    Initialize a ColorControlsProcessor

    ","parent_name":"ColorControlsProcessor"},"Structs/ColorControlsProcessor.html#/s:FV10Kingfisher22ColorControlsProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"ColorControlsProcessor"},"Structs/TintImageProcessor.html#/s:vV10Kingfisher18TintImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"TintImageProcessor"},"Structs/TintImageProcessor.html#/s:vV10Kingfisher18TintImageProcessor4tintCSo7UIColor":{"name":"tint","abstract":"

    Tint color will be used to tint the input image.

    ","parent_name":"TintImageProcessor"},"Structs/TintImageProcessor.html#/s:FV10Kingfisher18TintImageProcessorcFT4tintCSo7UIColor_S0_":{"name":"init(tint:)","abstract":"

    Initialize a TintImageProcessor

    ","parent_name":"TintImageProcessor"},"Structs/TintImageProcessor.html#/s:FV10Kingfisher18TintImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"TintImageProcessor"},"Structs/OverlayImageProcessor.html#/s:vV10Kingfisher21OverlayImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:vV10Kingfisher21OverlayImageProcessor7overlayCSo7UIColor":{"name":"overlay","abstract":"

    Overlay color will be used to overlay the input image.

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:vV10Kingfisher21OverlayImageProcessor8fractionV12CoreGraphics7CGFloat":{"name":"fraction","abstract":"

    Fraction will be used when overlay the color to image.

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:FV10Kingfisher21OverlayImageProcessorcFT7overlayCSo7UIColor8fractionV12CoreGraphics7CGFloat_S0_":{"name":"init(overlay:fraction:)","abstract":"

    Initialize an OverlayImageProcessor

    ","parent_name":"OverlayImageProcessor"},"Structs/OverlayImageProcessor.html#/s:FV10Kingfisher21OverlayImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"OverlayImageProcessor"},"Structs/BlurImageProcessor.html#/s:vV10Kingfisher18BlurImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"BlurImageProcessor"},"Structs/BlurImageProcessor.html#/s:vV10Kingfisher18BlurImageProcessor10blurRadiusV12CoreGraphics7CGFloat":{"name":"blurRadius","abstract":"

    Blur radius for the simulated Gaussian blur.

    ","parent_name":"BlurImageProcessor"},"Structs/BlurImageProcessor.html#/s:FV10Kingfisher18BlurImageProcessorcFT10blurRadiusV12CoreGraphics7CGFloat_S0_":{"name":"init(blurRadius:)","abstract":"

    Initialize a BlurImageProcessor

    ","parent_name":"BlurImageProcessor"},"Structs/BlurImageProcessor.html#/s:FV10Kingfisher18BlurImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"BlurImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor13referenceSizeVSC6CGSize":{"name":"referenceSize","abstract":"

    The reference size for resizing operation.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor17targetContentModeOS_11ContentMode":{"name":"targetContentMode","abstract":"

    Target content mode of output image should be.","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:FV10Kingfisher22ResizingImageProcessorcFT13referenceSizeVSC6CGSize4modeOS_11ContentMode_S0_":{"name":"init(referenceSize:mode:)","abstract":"

    Initialize a ResizingImageProcessor.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:FV10Kingfisher22ResizingImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:vV10Kingfisher22ResizingImageProcessor10targetSizeVSC6CGSize":{"name":"targetSize","abstract":"

    Reference size of output image should follow.

    ","parent_name":"ResizingImageProcessor"},"Structs/ResizingImageProcessor.html#/s:FV10Kingfisher22ResizingImageProcessorcFT10targetSizeVSC6CGSize11contentModeOS_11ContentMode_S0_":{"name":"init(targetSize:contentMode:)","abstract":"

    Initialize a ResizingImageProcessor

    ","parent_name":"ResizingImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor12cornerRadiusV12CoreGraphics7CGFloat":{"name":"cornerRadius","abstract":"

    Corner radius will be applied in processing.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor15roundingCornersVS_10RectCorner":{"name":"roundingCorners","abstract":"

    The target corners which will be applied rounding.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:vV10Kingfisher25RoundCornerImageProcessor10targetSizeGSqVSC6CGSize_":{"name":"targetSize","abstract":"

    Target size of output image should be. If nil, the image will keep its original size after processing.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:FV10Kingfisher25RoundCornerImageProcessorcFT12cornerRadiusV12CoreGraphics7CGFloat10targetSizeGSqVSC6CGSize_15roundingCornersVS_10RectCorner_S0_":{"name":"init(cornerRadius:targetSize:roundingCorners:)","abstract":"

    Initialize a RoundCornerImageProcessor

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RoundCornerImageProcessor.html#/s:FV10Kingfisher25RoundCornerImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"RoundCornerImageProcessor"},"Structs/RectCorner.html#/s:vPs16RawRepresentable8rawValuewx8RawValue":{"name":"rawValue","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner7topLeftS0_":{"name":"topLeft","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner8topRightS0_":{"name":"topRight","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner10bottomLeftS0_":{"name":"bottomLeft","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner11bottomRightS0_":{"name":"bottomRight","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:ZvV10Kingfisher10RectCorner3allS0_":{"name":"all","abstract":"

    Undocumented

    ","parent_name":"RectCorner"},"Structs/RectCorner.html#/s:FPs9OptionSetcFT8rawValuewx8RawValue_x":{"name":"init(rawValue:)","parent_name":"RectCorner"},"Structs/DefaultImageProcessor.html#/s:ZvV10Kingfisher21DefaultImageProcessor7defaultS0_":{"name":"default","abstract":"

    A default DefaultImageProcessor could be used across.

    ","parent_name":"DefaultImageProcessor"},"Structs/DefaultImageProcessor.html#/s:vV10Kingfisher21DefaultImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor.

    ","parent_name":"DefaultImageProcessor"},"Structs/DefaultImageProcessor.html#/s:FV10Kingfisher21DefaultImageProcessorcFT_S0_":{"name":"init()","abstract":"

    Initialize a DefaultImageProcessor

    ","parent_name":"DefaultImageProcessor"},"Structs/DefaultImageProcessor.html#/s:FV10Kingfisher21DefaultImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"DefaultImageProcessor"},"Structs/RetrieveImageDownloadTask.html#/s:vV10Kingfisher25RetrieveImageDownloadTask15ownerDownloaderXwGSqCS_15ImageDownloader_":{"name":"ownerDownloader","abstract":"

    Downloader by which this task is intialized.

    ","parent_name":"RetrieveImageDownloadTask"},"Structs/RetrieveImageDownloadTask.html#/s:FV10Kingfisher25RetrieveImageDownloadTask6cancelFT_T_":{"name":"cancel()","abstract":"

    Cancel this download task. It will trigger the completion handler with an NSURLErrorCancelled error.

    ","parent_name":"RetrieveImageDownloadTask"},"Structs/RetrieveImageDownloadTask.html#/s:vV10Kingfisher25RetrieveImageDownloadTask3urlGSqV10Foundation3URL_":{"name":"url","abstract":"

    The original request URL of this download task.

    ","parent_name":"RetrieveImageDownloadTask"},"Structs/RetrieveImageDownloadTask.html#/s:vV10Kingfisher25RetrieveImageDownloadTask8prioritySf":{"name":"priority","abstract":"

    The relative priority of this download task.","parent_name":"RetrieveImageDownloadTask"},"Structs/Filter.html#/s:FV10Kingfisher6FiltercFT8tranformFCSo7CIImageGSqS1___S0_":{"name":"init(tranform:)","abstract":"

    Undocumented

    ","parent_name":"Filter"},"Structs/Filter.html#/s:ZvV10Kingfisher6Filter4tintFCSo7UIColorS0_":{"name":"tint","abstract":"

    Tint filter which will apply a tint color to images.

    ","parent_name":"Filter"},"Structs/Filter.html#/s:ZvV10Kingfisher6Filter12colorControlFTV12CoreGraphics7CGFloatS2_S2_S2__S0_":{"name":"colorControl","abstract":"

    Color control filter which will apply color control change to images.

    ","parent_name":"Filter"},"Structs/AnyModifier.html#/s:FV10Kingfisher11AnyModifier8modifiedFT3forV10Foundation10URLRequest_GSqS2__":{"name":"modified(for:)","abstract":"

    Undocumented

    ","parent_name":"AnyModifier"},"Structs/AnyModifier.html#/s:FV10Kingfisher11AnyModifiercFT6modifyFV10Foundation10URLRequestGSqS2___S0_":{"name":"init(modify:)","abstract":"

    Undocumented

    ","parent_name":"AnyModifier"},"Structs.html#/s:V10Kingfisher9DataProxy":{"name":"DataProxy","abstract":"

    Undocumented

    "},"Structs.html#/s:V10Kingfisher11CGSizeProxy":{"name":"CGSizeProxy","abstract":"

    Undocumented

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

    Undocumented

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

    Wrapper for a Transformer of CIImage filters.

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

    Download task.

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

    The default processor. It convert the input data to a valid image."},"Structs/RectCorner.html":{"name":"RectCorner","abstract":"

    Undocumented

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

    Processor for making round corner images. Only CG-based images are supported in macOS,"},"Structs/ResizingImageProcessor.html":{"name":"ResizingImageProcessor","abstract":"

    Processor for resizing images. Only CG-based images are supported in macOS.

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

    Processor for adding blur effect to images. Accelerate.framework is used underhood for"},"Structs/OverlayImageProcessor.html":{"name":"OverlayImageProcessor","abstract":"

    Processor for adding an overlay to images. Only CG-based images are supported in macOS.

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

    Processor for tint images with color. Only CG-based images are supported.

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

    Processor for applying some color control to images. Only CG-based images are supported."},"Structs/BlackWhiteProcessor.html":{"name":"BlackWhiteProcessor","abstract":"

    Processor for applying black and white effect to images. Only CG-based images are supported."},"Structs/CroppingImageProcessor.html":{"name":"CroppingImageProcessor","abstract":"

    Processor for cropping an image. Only CG-based images are supported."},"Structs/ImageResource.html":{"name":"ImageResource","abstract":"

    ImageResource is a simple combination of downloadURL and cacheKey.

    "},"Structs.html#/s:V10Kingfisher11StringProxy":{"name":"StringProxy","abstract":"

    Undocumented

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

    DefaultCacheSerializer is a basic CacheSerializer used in default cache of"},"Structs/FormatIndicatedCacheSerializer.html":{"name":"FormatIndicatedCacheSerializer","abstract":"

    FormatIndicatedCacheSerializer let you indicate an image format for serialized caches.

    "},"Protocols/CacheSerializer.html#/s:FP10Kingfisher15CacheSerializer4dataFT4withCSo7UIImage8originalGSqV10Foundation4Data__GSqS3__":{"name":"data(with:original:)","abstract":"

    Get the serialized data from a provided image","parent_name":"CacheSerializer"},"Protocols/CacheSerializer.html#/s:FP10Kingfisher15CacheSerializer5imageFT4withV10Foundation4Data7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"image(with:options:)","abstract":"

    Get an image deserialized from provided data.

    ","parent_name":"CacheSerializer"},"Protocols/Resource.html#/s:vP10Kingfisher8Resource8cacheKeySS":{"name":"cacheKey","abstract":"

    The key used in cache.

    ","parent_name":"Resource"},"Protocols/Resource.html#/s:vP10Kingfisher8Resource11downloadURLV10Foundation3URL":{"name":"downloadURL","abstract":"

    The target image URL.

    ","parent_name":"Resource"},"Protocols/Indicator.html#/s:FP10Kingfisher9Indicator18startAnimatingViewFT_T_":{"name":"startAnimatingView()","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/Indicator.html#/s:FP10Kingfisher9Indicator17stopAnimatingViewFT_T_":{"name":"stopAnimatingView()","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/Indicator.html#/s:vP10Kingfisher9Indicator10viewCenterVSC7CGPoint":{"name":"viewCenter","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/Indicator.html#/s:vP10Kingfisher9Indicator4viewCSo6UIView":{"name":"view","abstract":"

    Undocumented

    ","parent_name":"Indicator"},"Protocols/ImageProcessor.html#/s:vP10Kingfisher14ImageProcessor10identifierSS":{"name":"identifier","abstract":"

    Identifier of the processor. It will be used to identify the processor when","parent_name":"ImageProcessor"},"Protocols/ImageProcessor.html#/s:FP10Kingfisher14ImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","abstract":"

    Process an input ImageProcessItem item to an image for this processor.

    ","parent_name":"ImageProcessor"},"Protocols/ImageProcessor.html#/s:FE10KingfisherPS_14ImageProcessor6appendFT7anotherPS0___PS0__":{"name":"append(another:)","abstract":"

    Append an ImageProcessor to another. The identifier of the new ImageProcessor","parent_name":"ImageProcessor"},"Protocols/AuthenticationChallengeResponsable.html#/s:FP10Kingfisher34AuthenticationChallengeResponsable10downloaderFTCS_15ImageDownloader10didReceiveCSo26URLAuthenticationChallenge17completionHandlerFTOCSo10URLSession24AuthChallengeDispositionGSqCSo13URLCredential__T__T_":{"name":"downloader(_:didReceive:completionHandler:)","abstract":"

    Called when an session level authentication challenge is received.","parent_name":"AuthenticationChallengeResponsable"},"Protocols/ImageDownloaderDelegate.html#/s:FP10Kingfisher23ImageDownloaderDelegate15imageDownloaderFTCS_15ImageDownloader11didDownloadCSo7UIImage3forV10Foundation3URL4withGSqCSo11URLResponse__T_":{"name":"imageDownloader(_:didDownload:for:with:)","abstract":"

    Called when the ImageDownloader object successfully downloaded an image from specified URL.

    ","parent_name":"ImageDownloaderDelegate"},"Protocols/ImageDownloaderDelegate.html#/s:FP10Kingfisher23ImageDownloaderDelegate15imageDownloaderFTCS_15ImageDownloader23willDownloadImageForURLV10Foundation3URL4withGSqVS2_10URLRequest__T_":{"name":"imageDownloader(_:willDownloadImageForURL:with:)","abstract":"

    Called when the ImageDownloader object starts to download an image from specified URL.

    ","parent_name":"ImageDownloaderDelegate"},"Protocols/ImageDownloaderDelegate.html#/s:FP10Kingfisher23ImageDownloaderDelegate17isValidStatusCodeFTSi3forCS_15ImageDownloader_Sb":{"name":"isValidStatusCode(_:for:)","abstract":"

    Check if a received HTTP status code is valid or not.","parent_name":"ImageDownloaderDelegate"},"Protocols/KingfisherCompatible.html#/s:vP10Kingfisher20KingfisherCompatible2kfwx14CompatibleType":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"KingfisherCompatible"},"Protocols/CIImageProcessor.html#/s:vP10Kingfisher16CIImageProcessor6filterVS_6Filter":{"name":"filter","abstract":"

    Undocumented

    ","parent_name":"CIImageProcessor"},"Protocols/CIImageProcessor.html#/s:FP10Kingfisher14ImageProcessor7processFT4itemOS_16ImageProcessItem7optionsGSaOS_25KingfisherOptionsInfoItem__GSqCSo7UIImage_":{"name":"process(item:options:)","parent_name":"CIImageProcessor"},"Protocols/ImageDownloadRequestModifier.html#/s:FP10Kingfisher28ImageDownloadRequestModifier8modifiedFT3forV10Foundation10URLRequest_GSqS2__":{"name":"modified(for:)","abstract":"

    Undocumented

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

    Request modifier of image downloader.

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

    Supply a filter to create an ImageProcessor.

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

    A type that has Kingfisher extensions.

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

    Protocol of ImageDownloader.

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

    Protocol indicates that an authentication challenge could be handled.

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

    An ImageProcessor would be used to convert some downloaded data to an image.

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

    Undocumented

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

    Resource protocol defines how to download and cache a resource from network.

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

    An CacheSerializer would be used to convert some data to an image object for"},"Functions.html#/s:F10Kingfisheroi2ggFTPS_14ImageProcessor_PS0___PS0__":{"name":">>(_:_:)","abstract":"

    Concatenate two ImageProcessors. ImageProcessor.appen(another:) is used internally.

    "},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton11kf_setImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqS3__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"kf_setImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image to use for a specified state with a resource, a placeholder image, options, progress handler and","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton26kf_cancelImageDownloadTaskFT_T_":{"name":"kf_cancelImageDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton21kf_setBackgroundImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqS3__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"kf_setBackgroundImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set the background image to use for a specified state with a resource,","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton36kf_cancelBackgroundImageDownloadTaskFT_T_":{"name":"kf_cancelBackgroundImageDownloadTask()","abstract":"

    Cancel the background image download task bounded to the image view if it is running.","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton9kf_webURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"kf_webURL(for:)","abstract":"

    Get the image URL binded to this button for a specified state.

    ","parent_name":"UIButton"},"Extensions/UIButton.html#/s:FE10KingfisherCSo8UIButton19kf_backgroundWebURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"kf_backgroundWebURL(for:)","abstract":"

    Get the background image URL binded to this button for a specified state.

    ","parent_name":"UIButton"},"Extensions/String.html#/s:vE10KingfisherSS2kfVS_11StringProxy":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"String"},"Extensions/URL.html#/s:vP10Kingfisher8Resource8cacheKeySS":{"name":"cacheKey","parent_name":"URL"},"Extensions/URL.html#/s:vP10Kingfisher8Resource11downloadURLV10Foundation3URL":{"name":"downloadURL","parent_name":"URL"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_11targetCacheCS_10ImageCache":{"name":"targetCache","abstract":"

    The target ImageCache which is used.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_10downloaderCS_15ImageDownloader":{"name":"downloader","abstract":"

    The ImageDownloader which is specified.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_10transitionOS_15ImageTransition":{"name":"transition","abstract":"

    Member for animation transition when using UIImageView.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_16downloadPrioritySf":{"name":"downloadPriority","abstract":"

    A Float value set as the priority of image download task. The value for it should be","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_12forceRefreshSb":{"name":"forceRefresh","abstract":"

    Whether an image will be always downloaded again or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_15forceTransitionSb":{"name":"forceTransition","abstract":"

    Whether the transition should always happen or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_15cacheMemoryOnlySb":{"name":"cacheMemoryOnly","abstract":"

    Whether cache the image only in memory or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_13onlyFromCacheSb":{"name":"onlyFromCache","abstract":"

    Whether only load the images from cache or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_16backgroundDecodeSb":{"name":"backgroundDecode","abstract":"

    Whether the image should be decoded in background or not.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_23preloadAllAnimationDataSb":{"name":"preloadAllAnimationData","abstract":"

    Whether the image data should be all loaded at once if it is an animated image.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_21callbackDispatchQueueCSo13DispatchQueue":{"name":"callbackDispatchQueue","abstract":"

    The queue of callbacks should happen from Kingfisher.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_11scaleFactorV12CoreGraphics7CGFloat":{"name":"scaleFactor","abstract":"

    The scale factor which should be used for the image.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_8modifierPS_28ImageDownloadRequestModifier_":{"name":"modifier","abstract":"

    The ImageDownloadRequestModifier will be used before sending a download request.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_9processorPS_14ImageProcessor_":{"name":"processor","abstract":"

    ImageProcessor for processing when the downloading finishes.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_15cacheSerializerPS_15CacheSerializer_":{"name":"cacheSerializer","abstract":"

    CacheSerializer to convert image to data for storing in cache.

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_28keepCurrentImageWhileLoadingSb":{"name":"keepCurrentImageWhileLoading","abstract":"

    Keep the existing image while setting another image to an image view.","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_18onlyLoadFirstFrameSb":{"name":"onlyLoadFirstFrame","abstract":"

    Undocumented

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_18cacheOriginalImageSb":{"name":"cacheOriginalImage","abstract":"

    Undocumented

    ","parent_name":"Collection"},"Extensions/Collection.html#/s:ve10KingfisherRxs10CollectionWx8Iterator7Element_zOS_25KingfisherOptionsInfoItemrS0_17preloadAllGIFDataSb":{"name":"preloadAllGIFData","abstract":"

    Whether the image data should be all loaded at once if it is a GIF.

    ","parent_name":"Collection"},"Extensions/ImageView.html#/s:FE10KingfisherCSo11UIImageView11kf_setImageFT4withGSqPS_8Resource__11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S4__T__17completionHandlerGSqFTGSqS2__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"kf_setImage(with:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image with a resource, a placeholder image, options, progress handler and completion handler.

    ","parent_name":"ImageView"},"Extensions/ImageView.html#/s:FE10KingfisherCSo11UIImageView21kf_cancelDownloadTaskFT_T_":{"name":"kf_cancelDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"ImageView"},"Extensions/ImageView.html#/s:vE10KingfisherCSo11UIImageView9kf_webURLGSqV10Foundation3URL_":{"name":"kf_webURL","abstract":"

    Get the image URL binded to this image view.

    ","parent_name":"ImageView"},"Extensions/ImageView.html#/s:vE10KingfisherCSo11UIImageView16kf_indicatorTypeOS_13IndicatorType":{"name":"kf_indicatorType","abstract":"

    Holds which indicator type is going to be used.","parent_name":"ImageView"},"Extensions/ImageView.html#/s:vE10KingfisherCSo11UIImageView12kf_indicatorGSqPS_9Indicator__":{"name":"kf_indicator","abstract":"

    Undocumented

    ","parent_name":"ImageView"},"Extensions/Notification/Name.html#/s:ZvE10KingfisherVCSo14NSNotification4Name27KingfisherDidCleanDiskCacheS1_":{"name":"KingfisherDidCleanDiskCache","abstract":"

    This notification will be sent when the disk cache got cleaned either there are cached files expired or the total size exceeding the max allowed size. The manually invoking of clearDiskCache method will not trigger this notification.

    ","parent_name":"Name"},"Extensions/Notification/Name.html":{"name":"Name","parent_name":"Notification"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage13kf_normalizedFT_S0_":{"name":"kf_normalized()","abstract":"

    Normalize the image. This method does nothing in OS X.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage8kf_imageFT15withRoundRadiusV12CoreGraphics7CGFloat3fitVSC6CGSize5scaleS2__S0_":{"name":"kf_image(withRoundRadius:fit:scale:)","abstract":"

    Create a round corner image based on self.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage9kf_resizeFT2toVSC6CGSize_S0_":{"name":"kf_resize(to:)","abstract":"

    Resize self to an image of new size.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage10kf_blurredFT10withRadiusV12CoreGraphics7CGFloat_S0_":{"name":"kf_blurred(withRadius:)","abstract":"

    Create an image with blur effect based on self.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage13kf_overlayingFT4withCSo7UIColor8fractionV12CoreGraphics7CGFloat_S0_":{"name":"kf_overlaying(with:fraction:)","abstract":"

    Create an image from self with a color overlay layer.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage9kf_tintedFT4withCSo7UIColor_S0_":{"name":"kf_tinted(with:)","abstract":"

    Create an image from self with a color tint.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage11kf_adjustedFT10brightnessV12CoreGraphics7CGFloat8contrastS2_10saturationS2_7inputEVS2__S0_":{"name":"kf_adjusted(brightness:contrast:saturation:inputEV:)","abstract":"

    Create an image from self with color control.

    ","parent_name":"Image"},"Extensions/Image.html#/s:FE10KingfisherCSo7UIImage8kf_applyFVS_6FilterS0_":{"name":"kf_apply(_:)","abstract":"

    Apply a Filter containing CIImage transformer to self.

    ","parent_name":"Image"},"Extensions/CGSize.html#/s:vE10KingfisherVSC6CGSize2kfVS_11CGSizeProxy":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"CGSize"},"Extensions/Data.html#/s:vE10KingfisherV10Foundation4Data2kfVS_9DataProxy":{"name":"kf","abstract":"

    Undocumented

    ","parent_name":"Data"},"Extensions/Data.html":{"name":"Data"},"Extensions/CGSize.html":{"name":"CGSize"},"Extensions/Image.html":{"name":"Image","abstract":"

    Undocumented

    "},"Extensions/Notification.html":{"name":"Notification"},"Extensions/ImageView.html":{"name":"ImageView","abstract":"

    Undocumented

    "},"Extensions/Collection.html":{"name":"Collection"},"Extensions/URL.html":{"name":"URL","abstract":"

    URL conforms to Resource in Kingfisher."},"Extensions/String.html":{"name":"String"},"Extensions/UIButton.html":{"name":"UIButton","abstract":"

    Set image to use from web for a specified state. Deprecated. Use kf namespacing instead.

    "},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem11targetCacheFMS0_FCS_10ImageCacheS0_":{"name":"targetCache","abstract":"

    The associated value of this member should be an ImageCache object. Kingfisher will use the specified","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem10downloaderFMS0_FCS_15ImageDownloaderS0_":{"name":"downloader","abstract":"

    The associated value of this member should be an ImageDownloader object. Kingfisher will use this","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem10transitionFMS0_FOS_15ImageTransitionS0_":{"name":"transition","abstract":"

    Member for animation transition when using UIImageView. Kingfisher will use the ImageTransition of","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem16downloadPriorityFMS0_FSfS0_":{"name":"downloadPriority","abstract":"

    Associated Float value will be set as the priority of image download task. The value for it should be","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem12forceRefreshFMS0_S0_":{"name":"forceRefresh","abstract":"

    If set, Kingfisher will ignore the cache and try to fire a download task for the resource.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15forceTransitionFMS0_S0_":{"name":"forceTransition","abstract":"

    If set, setting the image to an image view will happen with transition even when retrieved from cache.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15cacheMemoryOnlyFMS0_S0_":{"name":"cacheMemoryOnly","abstract":"

    If set, Kingfisher will only cache the value in memory but not in disk.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem13onlyFromCacheFMS0_S0_":{"name":"onlyFromCache","abstract":"

    If set, Kingfisher will only try to retrieve the image from cache not from network.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem16backgroundDecodeFMS0_S0_":{"name":"backgroundDecode","abstract":"

    Decode the image in background thread before using.

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem21callbackDispatchQueueFMS0_FGSqCSo13DispatchQueue_S0_":{"name":"callbackDispatchQueue","abstract":"

    The associated value of this member will be used as the target queue of dispatch callbacks when","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem11scaleFactorFMS0_FV12CoreGraphics7CGFloatS0_":{"name":"scaleFactor","abstract":"

    The associated value of this member will be used as the scale factor when converting retrieved data to an image.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem23preloadAllAnimationDataFMS0_S0_":{"name":"preloadAllAnimationData","abstract":"

    Whether all the animated image data should be preloaded. Default it false, which means following frames will be","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15requestModifierFMS0_FPS_28ImageDownloadRequestModifier_S0_":{"name":"requestModifier","abstract":"

    The ImageDownloadRequestModifier contained will be used to change the request before it being sent.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem9processorFMS0_FPS_14ImageProcessor_S0_":{"name":"processor","abstract":"

    Processor for processing when the downloading finishes, a processor will convert the downloaded data to an image","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem15cacheSerializerFMS0_FPS_15CacheSerializer_S0_":{"name":"cacheSerializer","abstract":"

    Supply an CacheSerializer to convert some data to an image object for","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem28keepCurrentImageWhileLoadingFMS0_S0_":{"name":"keepCurrentImageWhileLoading","abstract":"

    Keep the existing image while setting another image to an image view.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem18onlyLoadFirstFrameFMS0_S0_":{"name":"onlyLoadFirstFrame","abstract":"

    If set, Kingfisher will only load the first frame from a animated image data file as a single image.","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:FO10Kingfisher25KingfisherOptionsInfoItem18cacheOriginalImageFMS0_S0_":{"name":"cacheOriginalImage","abstract":"

    If set and an ImageProcessor is used, Kingfisher will try to cache both","parent_name":"KingfisherOptionsInfoItem"},"Enums/KingfisherOptionsInfoItem.html#/s:ZvO10Kingfisher25KingfisherOptionsInfoItem17preloadAllGIFDataS0_":{"name":"preloadAllGIFData","abstract":"

    Undocumented

    ","parent_name":"KingfisherOptionsInfoItem"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition4noneFMS0_S0_":{"name":"none","abstract":"

    No animation transistion.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition4fadeFMS0_FSdS0_":{"name":"fade","abstract":"

    Fade in the loaded image.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition12flipFromLeftFMS0_FSdS0_":{"name":"flipFromLeft","abstract":"

    Flip from left transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition13flipFromRightFMS0_FSdS0_":{"name":"flipFromRight","abstract":"

    Flip from right transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition11flipFromTopFMS0_FSdS0_":{"name":"flipFromTop","abstract":"

    Flip from top transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition14flipFromBottomFMS0_FSdS0_":{"name":"flipFromBottom","abstract":"

    Flip from bottom transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/s:FO10Kingfisher15ImageTransition6customFMS0_FT8durationSd7optionsVSC22UIViewAnimationOptions10animationsGSqFTCSo11UIImageViewCSo7UIImage_T__10completionGSqFSbT___S0_":{"name":"custom","abstract":"

    Custom transition.

    ","parent_name":"ImageTransition"},"Enums/ImageTransition.html#/none":{"name":"none","parent_name":"ImageTransition"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType4noneFMS0_S0_":{"name":"none","abstract":"

    No indicator.

    ","parent_name":"IndicatorType"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType8activityFMS0_S0_":{"name":"activity","abstract":"

    Use system activity indicator.

    ","parent_name":"IndicatorType"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType5imageFMS0_FT9imageDataV10Foundation4Data_S0_":{"name":"image","abstract":"

    Use an image as indicator. GIF is supported.

    ","parent_name":"IndicatorType"},"Enums/IndicatorType.html#/s:FO10Kingfisher13IndicatorType6customFMS0_FT9indicatorPS_9Indicator__S0_":{"name":"custom","abstract":"

    Use a custom indicator, which conforms to the Indicator protocol.

    ","parent_name":"IndicatorType"},"Enums/ContentMode.html#/s:FO10Kingfisher11ContentMode4noneFMS0_S0_":{"name":"none","abstract":"

    Undocumented

    ","parent_name":"ContentMode"},"Enums/ContentMode.html#/s:FO10Kingfisher11ContentMode9aspectFitFMS0_S0_":{"name":"aspectFit","abstract":"

    Undocumented

    ","parent_name":"ContentMode"},"Enums/ContentMode.html#/s:FO10Kingfisher11ContentMode10aspectFillFMS0_S0_":{"name":"aspectFill","abstract":"

    Undocumented

    ","parent_name":"ContentMode"},"Enums/ImageProcessItem.html#/s:FO10Kingfisher16ImageProcessItem5imageFMS0_FCSo7UIImageS0_":{"name":"image","abstract":"

    Undocumented

    ","parent_name":"ImageProcessItem"},"Enums/ImageProcessItem.html#/s:FO10Kingfisher16ImageProcessItem4dataFMS0_FV10Foundation4DataS0_":{"name":"data","abstract":"

    Undocumented

    ","parent_name":"ImageProcessItem"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError7badDataFMS0_S0_":{"name":"badData","abstract":"

    badData: The downloaded data is not an image or the data is corrupted.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError11notModifiedFMS0_S0_":{"name":"notModified","abstract":"

    notModified: The remote server responsed a 304 code. No image data downloaded.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError17invalidStatusCodeFMS0_S0_":{"name":"invalidStatusCode","abstract":"

    The HTTP status code in response is not valid. If an invalid","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError9notCachedFMS0_S0_":{"name":"notCached","abstract":"

    notCached: The image rquested is not in cache but .onlyFromCache is activated.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError10invalidURLFMS0_S0_":{"name":"invalidURL","abstract":"

    The URL is invalid.

    ","parent_name":"KingfisherError"},"Enums/KingfisherError.html#/s:FO10Kingfisher15KingfisherError31downloadCancelledBeforeStartingFMS0_S0_":{"name":"downloadCancelledBeforeStarting","abstract":"

    The downloading task is cancelled before started.

    ","parent_name":"KingfisherError"},"Enums/CacheType.html#/s:FO10Kingfisher9CacheType4noneFMS0_S0_":{"name":"none","abstract":"

    Undocumented

    ","parent_name":"CacheType"},"Enums/CacheType.html#/s:FO10Kingfisher9CacheType6memoryFMS0_S0_":{"name":"memory","abstract":"

    Undocumented

    ","parent_name":"CacheType"},"Enums/CacheType.html#/s:FO10Kingfisher9CacheType4diskFMS0_S0_":{"name":"disk","abstract":"

    Undocumented

    ","parent_name":"CacheType"},"Enums/CacheType.html":{"name":"CacheType","abstract":"

    Cache type of a cached image.

    "},"Enums/KingfisherError.html":{"name":"KingfisherError","abstract":"

    The code of errors which ImageDownloader might encountered.

    "},"Enums/ImageProcessItem.html":{"name":"ImageProcessItem","abstract":"

    The item which could be processed by an ImageProcessor

    "},"Enums/ContentMode.html":{"name":"ContentMode","abstract":"

    Specify how a size adjusts itself to fit a target size.

    "},"Enums/IndicatorType.html":{"name":"IndicatorType","abstract":"

    Undocumented

    "},"Enums/ImageTransition.html":{"name":"ImageTransition","abstract":"

    Transition effect which will be used when an image downloaded and set by UIImageView extension API in Kingfisher."},"Enums/KingfisherOptionsInfoItem.html":{"name":"KingfisherOptionsInfoItem","abstract":"

    Items could be added into KingfisherOptionsInfo.

    "},"Global Variables.html#/s:v10Kingfisher33KingfisherDiskCacheCleanedHashKeySS":{"name":"KingfisherDiskCacheCleanedHashKey","abstract":"

    Key for array of cleaned hashes in userInfo of KingfisherDidCleanDiskCacheNotification.

    "},"Global Variables.html#/s:v10Kingfisher28KingfisherErrorStatusCodeKeySS":{"name":"KingfisherErrorStatusCodeKey","abstract":"

    Key will be used in the userInfo of .invalidStatusCode

    "},"Global Variables.html#/s:v10Kingfisher21KingfisherErrorDomainSS":{"name":"KingfisherErrorDomain","abstract":"

    Error domain of Kingfisher

    "},"Classes/ImagePrefetcher.html#/s:vC10Kingfisher15ImagePrefetcher22maxConcurrentDownloadsSi":{"name":"maxConcurrentDownloads","abstract":"

    The maximum concurrent downloads to use when prefetching images. Default is 5.

    ","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetchercFT4urlsGSaV10Foundation3URL_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTGSaPS_8Resource__GSaPS4___GSaPS4____T__17completionHandlerGSqFTGSaPS4___GSaPS4___GSaPS4____T___S0_":{"name":"init(urls:options:progressBlock:completionHandler:)","abstract":"

    Init an image prefetcher with an array of URLs.

    ","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetchercFT9resourcesGSaPS_8Resource__7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTGSaPS1___GSaPS1___GSaPS1____T__17completionHandlerGSqFTGSaPS1___GSaPS1___GSaPS1____T___S0_":{"name":"init(resources:options:progressBlock:completionHandler:)","abstract":"

    Init an image prefetcher with an array of resources.

    ","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetcher5startFT_T_":{"name":"start()","abstract":"

    Start to download the resources and cache them. This can be useful for background downloading","parent_name":"ImagePrefetcher"},"Classes/ImagePrefetcher.html#/s:FC10Kingfisher15ImagePrefetcher4stopFT_T_":{"name":"stop()","abstract":"

    Stop current downloading progress, and cancel any future prefetching activity that might be occuring.

    ","parent_name":"ImagePrefetcher"},"Classes/KingfisherManager.html#/s:ZvC10Kingfisher17KingfisherManager6sharedS0_":{"name":"shared","abstract":"

    Shared manager used by the extensions across Kingfisher.

    ","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:vC10Kingfisher17KingfisherManager5cacheCS_10ImageCache":{"name":"cache","abstract":"

    Cache used by this manager

    ","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:vC10Kingfisher17KingfisherManager10downloaderCS_15ImageDownloader":{"name":"downloader","abstract":"

    Downloader used by this manager

    ","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:vC10Kingfisher17KingfisherManager14defaultOptionsGSaOS_25KingfisherOptionsInfoItem_":{"name":"defaultOptions","abstract":"

    Default options used by the manager. This option will be used in","parent_name":"KingfisherManager"},"Classes/KingfisherManager.html#/s:FC10Kingfisher17KingfisherManager13retrieveImageFT4withPS_8Resource_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S3__T__17completionHandlerGSqFTGSqCSo7UIImage_GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"retrieveImage(with:options:progressBlock:completionHandler:)","abstract":"

    Get an image with resource.","parent_name":"KingfisherManager"},"Classes/RetrieveImageTask.html#/s:ZvC10Kingfisher17RetrieveImageTask5emptyS0_":{"name":"empty","abstract":"

    Undocumented

    ","parent_name":"RetrieveImageTask"},"Classes/RetrieveImageTask.html#/s:vC10Kingfisher17RetrieveImageTask16diskRetrieveTaskGSqC8Dispatch16DispatchWorkItem_":{"name":"diskRetrieveTask","abstract":"

    The disk retrieve task in this image task. Kingfisher will try to look up in cache first. This task represent the cache search task.

    ","parent_name":"RetrieveImageTask"},"Classes/RetrieveImageTask.html#/s:vC10Kingfisher17RetrieveImageTask12downloadTaskGSqVS_25RetrieveImageDownloadTask_":{"name":"downloadTask","abstract":"

    The network retrieve task in this image task.

    ","parent_name":"RetrieveImageTask"},"Classes/RetrieveImageTask.html#/s:FC10Kingfisher17RetrieveImageTask6cancelFT_T_":{"name":"cancel()","abstract":"

    Cancel current task. If this task is already done, do nothing.

    ","parent_name":"RetrieveImageTask"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader15downloadTimeoutSd":{"name":"downloadTimeout","abstract":"

    The duration before the download is timeout. Default is 15 seconds.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader12trustedHostsGSqGVs3SetSS__":{"name":"trustedHosts","abstract":"

    A set of trusted hosts when receiving server trust challenges. A challenge with host name contained in this set will be ignored.","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader20sessionConfigurationCSo23URLSessionConfiguration":{"name":"sessionConfiguration","abstract":"

    Use this to set supply a configuration for the downloader. By default, NSURLSessionConfiguration.ephemeralSessionConfiguration() will be used.","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader21requestsUsePipeliningSb":{"name":"requestsUsePipelining","abstract":"

    Whether the download requests should use pipeling or not. Default is false.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader8delegateXwGSqPS_23ImageDownloaderDelegate__":{"name":"delegate","abstract":"

    Delegate of this ImageDownloader object. See ImageDownloaderDelegate protocol for more.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader32authenticationChallengeResponderXwGSqPS_34AuthenticationChallengeResponsable__":{"name":"authenticationChallengeResponder","abstract":"

    A responder for authentication challenge.","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:ZvC10Kingfisher15ImageDownloader7defaultS0_":{"name":"default","abstract":"

    The default downloader.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:FC10Kingfisher15ImageDownloadercFT4nameSS_S0_":{"name":"init(name:)","abstract":"

    Init a downloader with name.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:FC10Kingfisher15ImageDownloader13downloadImageFT4withV10Foundation3URL17retrieveImageTaskGSqCS_17RetrieveImageTask_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqCSo7UIImage_GSqCSo7NSError_GSqS2__GSqVS1_4Data__T___GSqVS_25RetrieveImageDownloadTask_":{"name":"downloadImage(with:retrieveImageTask:options:progressBlock:completionHandler:)","abstract":"

    Download an image with a URL and option.

    ","parent_name":"ImageDownloader"},"Classes/ImageDownloader.html#/s:vC10Kingfisher15ImageDownloader19requestsUsePipelingSb":{"name":"requestsUsePipeling","abstract":"

    Undocumented

    ","parent_name":"ImageDownloader"},"Classes/ImageCache/CacheCheckResult.html#/s:vVC10Kingfisher10ImageCache16CacheCheckResult6cachedSb":{"name":"cached","abstract":"

    Undocumented

    ","parent_name":"CacheCheckResult"},"Classes/ImageCache/CacheCheckResult.html#/s:vVC10Kingfisher10ImageCache16CacheCheckResult9cacheTypeGSqOS_9CacheType_":{"name":"cacheType","abstract":"

    Undocumented

    ","parent_name":"CacheCheckResult"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache13maxMemoryCostSu":{"name":"maxMemoryCost","abstract":"

    The largest cache cost of memory cache. The total cost is pixel count of","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache13diskCachePathSS":{"name":"diskCachePath","abstract":"

    The disk cache location.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache13pathExtensionGSqSS_":{"name":"pathExtension","abstract":"

    The default file extension appended to cached files.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache22maxCachePeriodInSecondSd":{"name":"maxCachePeriodInSecond","abstract":"

    The longest time duration in second of the cache being stored in disk.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:vC10Kingfisher10ImageCache16maxDiskCacheSizeSu":{"name":"maxDiskCacheSize","abstract":"

    The largest disk size can be taken for the cache. It is the total","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:ZvC10Kingfisher10ImageCache7defaultS0_":{"name":"default","abstract":"

    The default cache.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:C10Kingfisher10ImageCache20DiskCachePathClosure":{"name":"DiskCachePathClosure","abstract":"

    Closure that defines the disk cache path from a given path and cacheName.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:ZFC10Kingfisher10ImageCache27defaultDiskCachePathClosureFT4pathGSqSS_9cacheNameSS_SS":{"name":"defaultDiskCachePathClosure(path:cacheName:)","abstract":"

    The default DiskCachePathClosure

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCachecFT4nameSS4pathGSqSS_20diskCachePathClosureFTGSqSS_SS_SS_S0_":{"name":"init(name:path:diskCachePathClosure:)","abstract":"

    Init method. Passing a name for the cache. It represents a cache folder in the memory and disk.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache5storeFTCSo7UIImage8originalGSqV10Foundation4Data_6forKeySS19processorIdentifierSS15cacheSerializerPS_15CacheSerializer_6toDiskSb17completionHandlerGSqFT_T___T_":{"name":"store(_:original:forKey:processorIdentifier:cacheSerializer:toDisk:completionHandler:)","abstract":"

    Store an image to cache. It will be saved to both memory and disk. It is an async operation.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache11removeImageFT6forKeySS19processorIdentifierSS8fromDiskSb17completionHandlerGSqFT_T___T_":{"name":"removeImage(forKey:processorIdentifier:fromDisk:completionHandler:)","abstract":"

    Remove the image for key for the cache. It will be opted out from both memory and disk.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache13retrieveImageFT6forKeySS7optionsGSqGSaOS_25KingfisherOptionsInfoItem__17completionHandlerGSqFTGSqCSo7UIImage_OS_9CacheType_T___GSqC8Dispatch16DispatchWorkItem_":{"name":"retrieveImage(forKey:options:completionHandler:)","abstract":"

    Get an image for a key from memory or disk.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache26retrieveImageInMemoryCacheFT6forKeySS7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"retrieveImageInMemoryCache(forKey:options:)","abstract":"

    Get an image for a key from memory.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache24retrieveImageInDiskCacheFT6forKeySS7optionsGSqGSaOS_25KingfisherOptionsInfoItem___GSqCSo7UIImage_":{"name":"retrieveImageInDiskCache(forKey:options:)","abstract":"

    Get an image for a key from disk.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache16clearMemoryCacheFT_T_":{"name":"clearMemoryCache()","abstract":"

    Clear memory cache.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache14clearDiskCacheFT10completionGSqFT_T___T_":{"name":"clearDiskCache(completion:)","abstract":"

    Clear disk cache. This is an async operation.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache21cleanExpiredDiskCacheFT10completionGSqFT_T___T_":{"name":"cleanExpiredDiskCache(completion:)","abstract":"

    Clean expired disk cache. This is an async operation.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache31backgroundCleanExpiredDiskCacheFT_T_":{"name":"backgroundCleanExpiredDiskCache()","abstract":"

    Clean expired disk cache when app in background. This is an async operation.","parent_name":"ImageCache"},"Classes/ImageCache/CacheCheckResult.html":{"name":"CacheCheckResult","abstract":"

    Cache result for checking whether an image is cached for a key.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache13isImageCachedFT6forKeySS19processorIdentifierSS_VS0_16CacheCheckResult":{"name":"isImageCached(forKey:processorIdentifier:)","abstract":"

    Check whether an image is cached for a key.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache4hashFT6forKeySS19processorIdentifierSS_SS":{"name":"hash(forKey:processorIdentifier:)","abstract":"

    Get the hash for the key. This could be used for matching files.

    ","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache22calculateDiskCacheSizeFT10completionFSuT__T_":{"name":"calculateDiskCacheSize(completion:)","abstract":"

    Calculate the disk size taken by cache.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache9cachePathFT6forKeySS19processorIdentifierSS_SS":{"name":"cachePath(forKey:processorIdentifier:)","abstract":"

    Get the cache path for the key.","parent_name":"ImageCache"},"Classes/ImageCache.html#/s:FC10Kingfisher10ImageCache9cachePathFT14forComputedKeySS_SS":{"name":"cachePath(forComputedKey:)","abstract":"

    Undocumented

    ","parent_name":"ImageCache"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView21autoPlayAnimatedImageSb":{"name":"autoPlayAnimatedImage","abstract":"

    Whether automatically play the animation when the view become visible. Default is true.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView17framePreloadCountSi":{"name":"framePreloadCount","abstract":"

    The size of the frame cache.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView15needsPrescalingSb":{"name":"needsPrescaling","abstract":"

    Specifies whether the GIF frames should be pre-scaled to save memory. Default is true.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView11runLoopModeVSC11RunLoopMode":{"name":"runLoopMode","abstract":"

    The animation timer’s run loop mode. Default is NSRunLoopCommonModes. Set this property to NSDefaultRunLoopMode will make the animation pause during UIScrollView scrolling.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView5imageGSqCSo7UIImage_":{"name":"image","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:vC10Kingfisher17AnimatedImageView11isAnimatingSb":{"name":"isAnimating","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView14startAnimatingFT_T_":{"name":"startAnimating()","abstract":"

    Starts the animation.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView13stopAnimatingFT_T_":{"name":"stopAnimating()","abstract":"

    Stops the animation.

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView7displayFCSo7CALayerT_":{"name":"display(_:)","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView15didMoveToWindowFT_T_":{"name":"didMoveToWindow()","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/AnimatedImageView.html#/s:FC10Kingfisher17AnimatedImageView18didMoveToSuperviewFT_T_":{"name":"didMoveToSuperview()","abstract":"

    Undocumented

    ","parent_name":"AnimatedImageView"},"Classes/Kingfisher.html#/s:vC10Kingfisher10Kingfisher4basex":{"name":"base","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:FC10Kingfisher10KingfishercFxGS0_x_":{"name":"init(_:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/normalized":{"name":"normalized","abstract":"

    Normalize the image. This method does nothing in OS X.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo7UIImagerCS_10Kingfisher10normalizedS0_":{"name":"normalized","abstract":"

    Normalize the image. This method will try to redraw an image with orientation and scale considered.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher17pngRepresentationFT_GSqV10Foundation4Data_":{"name":"pngRepresentation()","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher18jpegRepresentationFT18compressionQualityV12CoreGraphics7CGFloat_GSqV10Foundation4Data_":{"name":"jpegRepresentation(compressionQuality:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher17gifRepresentationFT_GSqV10Foundation4Data_":{"name":"gifRepresentation()","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher5imageFT15withRoundRadiusV12CoreGraphics7CGFloat3fitVSC6CGSize15roundingCornersVS_10RectCorner_S0_":{"name":"image(withRoundRadius:fit:roundingCorners:)","abstract":"

    Create a round corner image based on self.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher6resizeFT2toVSC6CGSize_S0_":{"name":"resize(to:)","abstract":"

    Resize self to an image of new size.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher6resizeFT2toVSC6CGSize3forOS_11ContentMode_S0_":{"name":"resize(to:for:)","abstract":"

    Resize self to an image of new size, respecting the content mode.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher4cropFT2toVSC6CGSize8anchorOnVSC7CGPoint_S0_":{"name":"crop(to:anchorOn:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher7blurredFT10withRadiusV12CoreGraphics7CGFloat_S0_":{"name":"blurred(withRadius:)","abstract":"

    Create an image with blur effect based on self.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher10overlayingFT4withCSo7UIColor8fractionV12CoreGraphics7CGFloat_S0_":{"name":"overlaying(with:fraction:)","abstract":"

    Create an image from self with a color overlay layer.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher6tintedFT4withCSo7UIColor_S0_":{"name":"tinted(with:)","abstract":"

    Create an image from self with a color tint.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher8adjustedFT10brightnessV12CoreGraphics7CGFloat8contrastS3_10saturationS3_7inputEVS3__S0_":{"name":"adjusted(brightness:contrast:saturation:inputEV:)","abstract":"

    Create an image from self with color control.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher5imageFT15withRoundRadiusV12CoreGraphics7CGFloat3fitVSC6CGSize5scaleS3__S0_":{"name":"image(withRoundRadius:fit:scale:)","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo7UIImagerCS_10Kingfisher5applyFVS_6FilterS0_":{"name":"apply(_:)","abstract":"

    Apply a Filter containing CIImage transformer to self.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Zve10KingfisherRxCSo13UIApplicationrCS_10Kingfisher6sharedGSqS0__":{"name":"shared","abstract":"

    Undocumented

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo11UIImageViewrCS_10Kingfisher8setImageFT4withGSqPS_8Resource__11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S5__T__17completionHandlerGSqFTGSqS3__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"setImage(with:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image with a resource, a placeholder image, options, progress handler and completion handler.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo11UIImageViewrCS_10Kingfisher18cancelDownloadTaskFT_T_":{"name":"cancelDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo11UIImageViewrCS_10Kingfisher6webURLGSqV10Foundation3URL_":{"name":"webURL","abstract":"

    Get the image URL binded to this image view.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo11UIImageViewrCS_10Kingfisher13indicatorTypeOS_13IndicatorType":{"name":"indicatorType","abstract":"

    Holds which indicator type is going to be used.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:ve10KingfisherRxCSo11UIImageViewrCS_10Kingfisher9indicatorGSqPS_9Indicator__":{"name":"indicator","abstract":"

    Holds any type that conforms to the protocol Indicator.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher8setImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S6__T__17completionHandlerGSqFTGSqS4__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"setImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set an image to use for a specified state with a resource, a placeholder image, options, progress handler and","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher23cancelImageDownloadTaskFT_T_":{"name":"cancelImageDownloadTask()","abstract":"

    Cancel the image download task bounded to the image view if it is running.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher18setBackgroundImageFT4withGSqPS_8Resource__3forVSC14UIControlState11placeholderGSqCSo7UIImage_7optionsGSqGSaOS_25KingfisherOptionsInfoItem__13progressBlockGSqFTVs5Int64S6__T__17completionHandlerGSqFTGSqS4__GSqCSo7NSError_OS_9CacheTypeGSqV10Foundation3URL__T___CS_17RetrieveImageTask":{"name":"setBackgroundImage(with:for:placeholder:options:progressBlock:completionHandler:)","abstract":"

    Set the background image to use for a specified state with a resource,","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher33cancelBackgroundImageDownloadTaskFT_T_":{"name":"cancelBackgroundImageDownloadTask()","abstract":"

    Cancel the background image download task bounded to the image view if it is running.","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher6webURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"webURL(for:)","abstract":"

    Get the image URL binded to this button for a specified state.

    ","parent_name":"Kingfisher"},"Classes/Kingfisher.html#/s:Fe10KingfisherRxCSo8UIButtonrCS_10Kingfisher16backgroundWebURLFT3forVSC14UIControlState_GSqV10Foundation3URL_":{"name":"backgroundWebURL(for:)","abstract":"

    Get the background image URL binded to this button for a specified state.

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

    Undocumented

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

    AnimatedImageView is a subclass of UIImageView for displaying animated image.

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

    ImageCache represents both the memory and disk cache system of Kingfisher."},"Classes/ImageDownloader.html":{"name":"ImageDownloader","abstract":"

    ImageDownloader represents a downloading manager for requesting the image with a URL from server.

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

    RetrieveImageTask represents a task of image retrieving process."},"Classes/KingfisherManager.html":{"name":"KingfisherManager","abstract":"

    Main manager class of Kingfisher. It connects Kingfisher downloader and cache."},"Classes/ImagePrefetcher.html":{"name":"ImagePrefetcher","abstract":"

    ImagePrefetcher represents a downloading manager for requesting many images via URLs, then caching them."},"Classes.html":{"name":"Classes","abstract":"

    The following classes are available globally.

    "},"Global Variables.html":{"name":"Global Variables","abstract":"

    The following global variables are available globally.

    "},"Enums.html":{"name":"Enums","abstract":"

    The following enums are available globally.

    "},"Extensions.html":{"name":"Extensions","abstract":"

    The following extensions are available globally.

    "},"Functions.html":{"name":"Functions","abstract":"

    The following functions are available globally.

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

    The following protocols are available globally.

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

    The following structs are available globally.

    "},"Typealiases.html":{"name":"Typealiases","abstract":"

    The following typealiases are available globally.

    "}} \ No newline at end of file diff --git a/docs/undocumented.json b/docs/undocumented.json index 94772f764..e51f90443 100644 --- a/docs/undocumented.json +++ b/docs/undocumented.json @@ -1,544 +1,544 @@ { "warnings": [ { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/AnimatedImageView.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/AnimatedImageView.swift", "line": 94, "symbol": "AnimatedImageView.image", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/AnimatedImageView.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/AnimatedImageView.swift", "line": 110, "symbol": "AnimatedImageView.isAnimating", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/AnimatedImageView.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/AnimatedImageView.swift", "line": 135, "symbol": "AnimatedImageView.display(_:)", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/AnimatedImageView.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/AnimatedImageView.swift", "line": 143, "symbol": "AnimatedImageView.didMoveToWindow()", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/AnimatedImageView.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/AnimatedImageView.swift", "line": 148, "symbol": "AnimatedImageView.didMoveToSuperview()", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/CacheSerializer.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/CacheSerializer.swift", "line": 62, "symbol": "DefaultCacheSerializer.default", "symbol_kind": "source.lang.swift.decl.var.static", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Filter.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Filter.swift", "line": 40, "symbol": "CIImageProcessor.filter", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Filter.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Filter.swift", "line": 59, "symbol": "Filter.init(tranform:)", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/FormatIndicatedCacheSerializer.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/FormatIndicatedCacheSerializer.swift", "line": 54, "symbol": "FormatIndicatedCacheSerializer.png", "symbol_kind": "source.lang.swift.decl.var.static", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/FormatIndicatedCacheSerializer.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/FormatIndicatedCacheSerializer.swift", "line": 55, "symbol": "FormatIndicatedCacheSerializer.jpeg", "symbol_kind": "source.lang.swift.decl.var.static", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/FormatIndicatedCacheSerializer.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/FormatIndicatedCacheSerializer.swift", "line": 56, "symbol": "FormatIndicatedCacheSerializer.gif", "symbol_kind": "source.lang.swift.decl.var.static", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Image.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Image.swift", "line": 176, "symbol": "Kingfisher.pngRepresentation()", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Image.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Image.swift", "line": 189, "symbol": "Kingfisher.jpegRepresentation(compressionQuality:)", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Image.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Image.swift", "line": 202, "symbol": "Kingfisher.gifRepresentation()", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Image.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Image.swift", "line": 438, "symbol": "Kingfisher.crop(to:anchorOn:)", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Image.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Image.swift", "line": 671, "symbol": "DataProxy", "symbol_kind": "source.lang.swift.decl.struct", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Image.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Image.swift", "line": 680, "symbol": "Data.kf", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Image.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Image.swift", "line": 707, "symbol": "CGSizeProxy", "symbol_kind": "source.lang.swift.decl.struct", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Image.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Image.swift", "line": 716, "symbol": "CGSize.kf", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Image.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Image.swift", "line": 1041, "symbol": "Kingfisher.image(withRoundRadius:fit:scale:)", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageCache.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageCache.swift", "line": 62, "symbol": "CacheType.disk", "symbol_kind": "source.lang.swift.decl.enumelement", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageCache.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageCache.swift", "line": 62, "symbol": "CacheType.memory", "symbol_kind": "source.lang.swift.decl.enumelement", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageCache.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageCache.swift", "line": 62, "symbol": "CacheType.none", "symbol_kind": "source.lang.swift.decl.enumelement", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageCache.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageCache.swift", "line": 548, "symbol": "ImageCache.CacheCheckResult.cached", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageCache.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageCache.swift", "line": 549, "symbol": "ImageCache.CacheCheckResult.cacheType", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageCache.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageCache.swift", "line": 624, "symbol": "ImageCache.cachePath(forComputedKey:)", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageCache.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageCache.swift", "line": 672, "symbol": "Kingfisher.shared", "symbol_kind": "source.lang.swift.decl.var.static", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageDownloader.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageDownloader.swift", "line": 565, "symbol": "ImageDownloader.requestsUsePipeling", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", "line": 35, "symbol": "ImageProcessItem.image", "symbol_kind": "source.lang.swift.decl.enumelement", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", "line": 36, "symbol": "ImageProcessItem.data", "symbol_kind": "source.lang.swift.decl.enumelement", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", "line": 143, "symbol": "RectCorner", "symbol_kind": "source.lang.swift.decl.struct", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", "line": 145, "symbol": "RectCorner.topLeft", "symbol_kind": "source.lang.swift.decl.var.static", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", "line": 146, "symbol": "RectCorner.topRight", "symbol_kind": "source.lang.swift.decl.var.static", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", "line": 147, "symbol": "RectCorner.bottomLeft", "symbol_kind": "source.lang.swift.decl.var.static", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", "line": 148, "symbol": "RectCorner.bottomRight", "symbol_kind": "source.lang.swift.decl.var.static", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", "line": 149, "symbol": "RectCorner.all", "symbol_kind": "source.lang.swift.decl.var.static", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", "line": 225, "symbol": "ContentMode.none", "symbol_kind": "source.lang.swift.decl.enumelement", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", "line": 226, "symbol": "ContentMode.aspectFit", "symbol_kind": "source.lang.swift.decl.enumelement", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageProcessor.swift", "line": 227, "symbol": "ContentMode.aspectFill", "symbol_kind": "source.lang.swift.decl.enumelement", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/ImageView+Kingfisher.swift", - "line": 281, + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/ImageView+Kingfisher.swift", + "line": 284, "symbol": "ImageView.kf_indicator", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Indicator.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Indicator.swift", "line": null, "symbol": "Indicator", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Indicator.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Indicator.swift", "line": 39, "symbol": "IndicatorType", "symbol_kind": "source.lang.swift.decl.enum", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Indicator.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Indicator.swift", "line": 51, "symbol": "Indicator", "symbol_kind": "source.lang.swift.decl.protocol", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Indicator.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Indicator.swift", "line": 52, "symbol": "Indicator.startAnimatingView()", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Indicator.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Indicator.swift", "line": 53, "symbol": "Indicator.stopAnimatingView()", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Indicator.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Indicator.swift", "line": 55, "symbol": "Indicator.viewCenter", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Indicator.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Indicator.swift", "line": 56, "symbol": "Indicator.view", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Indicator.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Indicator.swift", "line": 76, "symbol": "Indicator.viewCenter", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Image", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Image", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "ImageView", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Kingfisher", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Kingfisher", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Kingfisher", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Kingfisher", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Kingfisher", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Kingfisher", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Kingfisher", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Kingfisher", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Kingfisher", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Kingfisher", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": null, "symbol": "Kingfisher", "symbol_kind": "source.lang.swift.decl.extension", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": 46, "symbol": "Kingfisher", "symbol_kind": "source.lang.swift.decl.class", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": 47, "symbol": "Kingfisher.base", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": 48, "symbol": "Kingfisher.init(_:)", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": 58, "symbol": "KingfisherCompatible.kf", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/Kingfisher.swift", "line": 62, "symbol": "KingfisherCompatible.kf", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/KingfisherManager.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/KingfisherManager.swift", "line": 40, "symbol": "RetrieveImageTask.empty", "symbol_kind": "source.lang.swift.decl.var.static", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/KingfisherOptionsInfo.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/KingfisherOptionsInfo.swift", "line": 301, "symbol": "Collection.onlyLoadFirstFrame", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/KingfisherOptionsInfo.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/KingfisherOptionsInfo.swift", "line": 305, "symbol": "Collection.cacheOriginalImage", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/KingfisherOptionsInfo.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/KingfisherOptionsInfo.swift", "line": 322, "symbol": "KingfisherOptionsInfoItem.preloadAllGIFData", "symbol_kind": "source.lang.swift.decl.var.static", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/RequestModifier.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/RequestModifier.swift", "line": 31, "symbol": "ImageDownloadRequestModifier.modified(for:)", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/RequestModifier.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/RequestModifier.swift", "line": 42, "symbol": "AnyModifier", "symbol_kind": "source.lang.swift.decl.struct", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/RequestModifier.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/RequestModifier.swift", "line": 46, "symbol": "AnyModifier.modified(for:)", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/RequestModifier.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/RequestModifier.swift", "line": 50, "symbol": "AnyModifier.init(modify:)", "symbol_kind": "source.lang.swift.decl.function.method.instance", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/String+MD5.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/String+MD5.swift", "line": 24, "symbol": "StringProxy", "symbol_kind": "source.lang.swift.decl.struct", "warning": "undocumented" }, { - "file": "/Users/JP20028/Dropbox/github/Kingfisher/Sources/String+MD5.swift", + "file": "/Users/onevcat/Dropbox/github/Kingfisher/Sources/String+MD5.swift", "line": 33, "symbol": "String.kf", "symbol_kind": "source.lang.swift.decl.var.instance", "warning": "undocumented" } ], - "source_directory": "/Users/JP20028/Dropbox/github/Kingfisher" + "source_directory": "/Users/onevcat/Dropbox/github/Kingfisher" } \ No newline at end of file