├── .gitmodules ├── GenS.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ ├── xcshareddata │ │ ├── GenS.xcscmblueprint │ │ └── IDEWorkspaceChecks.plist │ └── xcuserdata │ │ └── mac.xcuserdatad │ │ └── UserInterfaceState.xcuserstate └── xcuserdata │ └── mac.xcuserdatad │ ├── xcdebugger │ └── Breakpoints_v2.xcbkptlist │ └── xcschemes │ ├── GenS.xcscheme │ ├── duktape.xcscheme │ ├── grender.xcscheme │ ├── onigmo.xcscheme │ └── xcschememanagement.plist ├── GenS ├── AppDelegate.h ├── AppDelegate.mm ├── Assets.xcassets │ └── AppIcon.appiconset │ │ ├── AppIcon29x29@2x.png │ │ ├── AppIcon29x29@2x~ipad.png │ │ ├── AppIcon29x29~ipad.png │ │ ├── AppIcon40x40@2x.png │ │ ├── AppIcon40x40@2x~ipad.png │ │ ├── AppIcon40x40~ipad.png │ │ ├── AppIcon60x60@2x.png │ │ ├── AppIcon76x76@2x~ipad.png │ │ ├── AppIcon76x76~ipad.png │ │ └── Contents.json ├── Base.lproj │ └── LaunchScreen.storyboard ├── Controllers │ ├── GSBookInfoViewController.h │ ├── GSBookInfoViewController.mm │ ├── GSHomeController.h │ ├── GSHomeController.mm │ ├── GSLibraryViewController.h │ ├── GSLibraryViewController.mm │ ├── GSLocalBookInfoViewController.h │ ├── GSLocalBookInfoViewController.mm │ ├── GSProcessViewController.h │ ├── GSProcessViewController.mm │ ├── GSReadViewController.h │ ├── GSReadViewController.mm │ ├── GSSearchViewController.h │ ├── GSSearchViewController.mm │ ├── GSSettingViewController.h │ ├── GSSettingViewController.mm │ ├── GSShelfViewController.h │ ├── GSShelfViewController.mm │ ├── GSShelfsViewController.h │ ├── GSShelfsViewController.mm │ ├── GSShopInfoViewController.h │ ├── GSShopInfoViewController.mm │ ├── GSWebViewController.h │ └── GSWebViewController.mm ├── Datas │ └── ruby │ │ └── t_root │ │ ├── config.rb │ │ ├── library.rb │ │ ├── pre.js │ │ ├── read.js │ │ ├── reader.rb │ │ ├── settings.rb │ │ └── subject.json ├── Info.plist ├── Resources │ ├── Icons │ │ ├── AppIcon29x29@2x.png │ │ ├── AppIcon29x29@2x~ipad.png │ │ ├── AppIcon29x29~ipad.png │ │ ├── AppIcon40x40@2x.png │ │ ├── AppIcon40x40@2x~ipad.png │ │ ├── AppIcon40x40~ipad.png │ │ ├── AppIcon60x60@2x.png │ │ ├── AppIcon76x76@2x~ipad.png │ │ └── AppIcon76x76~ipad.png │ ├── back.png │ ├── back@2x.png │ ├── black.png │ ├── close@2x.png │ ├── close@3x.png │ ├── delete.png │ ├── delete@2x.png │ ├── done@3x.png │ ├── download@3x.png │ ├── edit@2x.png │ ├── edit@3x.png │ ├── failed@2x.png │ ├── failed@3x.png │ ├── heart@2x.png │ ├── heart@3x.png │ ├── home.png │ ├── home@2x.png │ ├── home@3x.png │ ├── menu.png │ ├── menu@2x.png │ ├── more.png │ ├── more@2x.png │ ├── no_image.png │ ├── no_image@2x.png │ ├── pause@3x.png │ ├── play@3x.png │ ├── progress.png │ ├── progress@2x.png │ ├── search.png │ ├── search@2x.png │ ├── setting.png │ ├── setting@2x.png │ ├── setting@3x.png │ ├── squares.png │ ├── squares@2x.png │ ├── squares@3x.png │ ├── stop.png │ ├── stop@2x.png │ └── tri.png ├── Utils │ ├── CacheManager │ │ ├── MTLocationCache.h │ │ ├── MTLocationCache.m │ │ ├── MTMenoryCache.h │ │ ├── MTMenoryCache.m │ │ ├── MTNetCacheElement.h │ │ ├── MTNetCacheElement.m │ │ ├── MTNetCacheManager.h │ │ └── MTNetCacheManager.m │ ├── CoverView │ │ ├── GCoverView.h │ │ └── GCoverView.m │ ├── DownloadQueue │ │ ├── GSDownloadManager.h │ │ └── GSDownloadManager.mm │ ├── GSAnalysis.h │ ├── GSAnalysis.m │ ├── GSMemCache.h │ ├── GSMemCache.m │ ├── GSUtils.hpp │ ├── GSUtils.mm │ ├── JGActionSheet │ │ ├── JGActionSheet.h │ │ └── JGActionSheet.m │ ├── MTAlertView │ │ ├── MTAlertView.h │ │ ├── MTAlertView.m │ │ ├── MTButton.h │ │ └── MTButton.m │ ├── MTPaddyButton │ │ ├── MTPaddyButton.h │ │ ├── MTPaddyButton.m │ │ ├── MTPaddyLayer.h │ │ └── MTPaddyLayer.m │ ├── Network │ │ ├── DIConfig.h │ │ ├── DIConfig.m │ │ ├── DIManager.h │ │ ├── DIManager.m │ │ └── PKMultipartInputStream │ │ │ ├── PKMultipartInputStream.h │ │ │ └── PKMultipartInputStream.m │ ├── OpenUDID │ │ ├── OpenUDID.h │ │ └── OpenUDID.m │ ├── RKDropdownAlert │ │ ├── RKDropdownAlert.h │ │ └── RKDropdownAlert.m │ ├── SDWebImage │ │ ├── .travis.yml │ │ ├── CHANGELOG.md │ │ ├── Docs │ │ │ ├── HowToUse.md │ │ │ ├── ManualInstallation.md │ │ │ ├── SDWebImage-4.0-Migration-guide.md │ │ │ ├── SDWebImage.mdj │ │ │ ├── SDWebImageClassDiagram.png │ │ │ └── SDWebImageSequenceDiagram.png │ │ ├── Examples │ │ │ ├── CustomPathImages │ │ │ │ └── 4ad9ae8eabfec60b40bf48f0bfc2d120 │ │ │ ├── Default-568h@2x.png │ │ │ ├── SDWebImage Demo.xcodeproj │ │ │ │ ├── project.pbxproj │ │ │ │ ├── project.xcworkspace │ │ │ │ │ └── contents.xcworkspacedata │ │ │ │ ├── xcshareddata │ │ │ │ │ └── xcschemes │ │ │ │ │ │ ├── SDWebImage OSX Demo.xcscheme │ │ │ │ │ │ ├── SDWebImage TV Demo.xcscheme │ │ │ │ │ │ └── SDWebImage Watch Demo.xcscheme │ │ │ │ └── xcuserdata │ │ │ │ │ └── mac.xcuserdatad │ │ │ │ │ └── xcschemes │ │ │ │ │ └── xcschememanagement.plist │ │ │ ├── SDWebImage Demo │ │ │ │ ├── AppDelegate.h │ │ │ │ ├── AppDelegate.m │ │ │ │ ├── DetailViewController.h │ │ │ │ ├── DetailViewController.m │ │ │ │ ├── MasterViewController.h │ │ │ │ ├── MasterViewController.m │ │ │ │ ├── SDWebImage Demo-Info.plist │ │ │ │ ├── SDWebImage Demo-Prefix.pch │ │ │ │ ├── en.lproj │ │ │ │ │ ├── DetailViewController.xib │ │ │ │ │ └── MasterViewController.xib │ │ │ │ ├── main.m │ │ │ │ ├── placeholder.png │ │ │ │ └── placeholder@2x.png │ │ │ ├── SDWebImage OSX Demo │ │ │ │ ├── AppDelegate.h │ │ │ │ ├── AppDelegate.m │ │ │ │ ├── Assets.xcassets │ │ │ │ │ └── AppIcon.appiconset │ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Base.lproj │ │ │ │ │ └── Main.storyboard │ │ │ │ ├── Info.plist │ │ │ │ ├── ViewController.h │ │ │ │ ├── ViewController.m │ │ │ │ └── main.m │ │ │ ├── SDWebImage TV Demo │ │ │ │ ├── AppDelegate.h │ │ │ │ ├── AppDelegate.m │ │ │ │ ├── Assets.xcassets │ │ │ │ │ ├── App Icon & Top Shelf Image.brandassets │ │ │ │ │ │ ├── App Icon - Large.imagestack │ │ │ │ │ │ │ ├── Back.imagestacklayer │ │ │ │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ ├── Contents.json │ │ │ │ │ │ │ ├── Front.imagestacklayer │ │ │ │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ └── Middle.imagestacklayer │ │ │ │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ ├── App Icon - Small.imagestack │ │ │ │ │ │ │ ├── Back.imagestacklayer │ │ │ │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ ├── Contents.json │ │ │ │ │ │ │ ├── Front.imagestacklayer │ │ │ │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ └── Middle.imagestacklayer │ │ │ │ │ │ │ │ ├── Content.imageset │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ ├── Contents.json │ │ │ │ │ │ └── Top Shelf Image.imageset │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── LaunchImage.launchimage │ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Base.lproj │ │ │ │ │ └── Main.storyboard │ │ │ │ ├── Info.plist │ │ │ │ ├── ViewController.h │ │ │ │ ├── ViewController.m │ │ │ │ └── main.m │ │ │ ├── SDWebImage Watch Demo Extension │ │ │ │ ├── Assets.xcassets │ │ │ │ │ └── README__ignoredByTemplate__ │ │ │ │ ├── ExtensionDelegate.h │ │ │ │ ├── ExtensionDelegate.m │ │ │ │ ├── Info.plist │ │ │ │ ├── InterfaceController.h │ │ │ │ ├── InterfaceController.m │ │ │ │ ├── NotificationController.h │ │ │ │ ├── NotificationController.m │ │ │ │ └── PushNotificationPayload.apns │ │ │ └── SDWebImage Watch Demo │ │ │ │ ├── Assets.xcassets │ │ │ │ └── AppIcon.appiconset │ │ │ │ │ └── Contents.json │ │ │ │ ├── Base.lproj │ │ │ │ └── Interface.storyboard │ │ │ │ └── Info.plist │ │ ├── LICENSE │ │ ├── README.md │ │ ├── SDWebImage.podspec │ │ ├── SDWebImage.xcodeproj │ │ │ ├── project.pbxproj │ │ │ ├── xcshareddata │ │ │ │ └── xcschemes │ │ │ │ │ ├── SDWebImage OSX.xcscheme │ │ │ │ │ ├── SDWebImage iOS static.xcscheme │ │ │ │ │ ├── SDWebImage iOS.xcscheme │ │ │ │ │ ├── SDWebImage tvOS.xcscheme │ │ │ │ │ ├── SDWebImage watchOS static.xcscheme │ │ │ │ │ └── SDWebImage watchOS.xcscheme │ │ │ └── xcuserdata │ │ │ │ └── mac.xcuserdatad │ │ │ │ └── xcschemes │ │ │ │ └── xcschememanagement.plist │ │ ├── SDWebImage.xcworkspace │ │ │ ├── contents.xcworkspacedata │ │ │ ├── xcshareddata │ │ │ │ ├── SDWebImage.xcscmblueprint │ │ │ │ ├── WorkspaceSettings.xcsettings │ │ │ │ └── xcschemes │ │ │ │ │ └── SDWebImage iOS Demo.xcscheme │ │ │ └── xcuserdata │ │ │ │ └── mac.xcuserdatad │ │ │ │ └── UserInterfaceState.xcuserstate │ │ ├── SDWebImage │ │ │ ├── FLAnimatedImage │ │ │ │ ├── FLAnimatedImageView+WebCache.h │ │ │ │ └── FLAnimatedImageView+WebCache.m │ │ │ ├── MKAnnotationView+WebCache.h │ │ │ ├── MKAnnotationView+WebCache.m │ │ │ ├── NSData+ImageContentType.h │ │ │ ├── NSData+ImageContentType.m │ │ │ ├── NSImage+WebCache.h │ │ │ ├── NSImage+WebCache.m │ │ │ ├── SDImageCache.h │ │ │ ├── SDImageCache.m │ │ │ ├── SDImageCacheConfig.h │ │ │ ├── SDImageCacheConfig.m │ │ │ ├── SDWebImageCompat.h │ │ │ ├── SDWebImageCompat.m │ │ │ ├── SDWebImageDecoder.h │ │ │ ├── SDWebImageDecoder.m │ │ │ ├── SDWebImageDownloader.h │ │ │ ├── SDWebImageDownloader.m │ │ │ ├── SDWebImageDownloaderOperation.h │ │ │ ├── SDWebImageDownloaderOperation.m │ │ │ ├── SDWebImageManager.h │ │ │ ├── SDWebImageManager.m │ │ │ ├── SDWebImageOperation.h │ │ │ ├── SDWebImagePrefetcher.h │ │ │ ├── SDWebImagePrefetcher.m │ │ │ ├── UIButton+WebCache.h │ │ │ ├── UIButton+WebCache.m │ │ │ ├── UIImage+GIF.h │ │ │ ├── UIImage+GIF.m │ │ │ ├── UIImage+MultiFormat.h │ │ │ ├── UIImage+MultiFormat.m │ │ │ ├── UIImage+WebP.h │ │ │ ├── UIImage+WebP.m │ │ │ ├── UIImageView+HighlightedWebCache.h │ │ │ ├── UIImageView+HighlightedWebCache.m │ │ │ ├── UIImageView+WebCache.h │ │ │ ├── UIImageView+WebCache.m │ │ │ ├── UIView+WebCache.h │ │ │ ├── UIView+WebCache.m │ │ │ ├── UIView+WebCacheOperation.h │ │ │ └── UIView+WebCacheOperation.m │ │ ├── SDWebImage_logo.png │ │ ├── SDWebImage_logo_small.png │ │ ├── Tests │ │ │ ├── Podfile │ │ │ ├── SDWebImage Tests.xcodeproj │ │ │ │ ├── project.pbxproj │ │ │ │ ├── xcshareddata │ │ │ │ │ └── xcschemes │ │ │ │ │ │ └── Tests.xcscheme │ │ │ │ └── xcuserdata │ │ │ │ │ └── mac.xcuserdatad │ │ │ │ │ └── xcschemes │ │ │ │ │ └── xcschememanagement.plist │ │ │ └── Tests │ │ │ │ ├── MonochromeTestImage.jpg │ │ │ │ ├── SDCategoriesTests.m │ │ │ │ ├── SDImageCacheTests.m │ │ │ │ ├── SDWebImageDecoderTests.m │ │ │ │ ├── SDWebImageDownloaderTests.m │ │ │ │ ├── SDWebImageManagerTests.m │ │ │ │ ├── SDWebImagePrefetcherTests.m │ │ │ │ ├── TestImage.gif │ │ │ │ ├── TestImage.jpg │ │ │ │ ├── TestImage.png │ │ │ │ ├── TestImageLarge.jpg │ │ │ │ ├── Tests-Info.plist │ │ │ │ ├── Tests-Prefix.pch │ │ │ │ ├── UIImageMultiFormatTests.m │ │ │ │ └── en.lproj │ │ │ │ └── InfoPlist.strings │ │ ├── Vendors │ │ │ ├── FLAnimatedImage │ │ │ │ ├── .gitignore │ │ │ │ ├── CHANGES │ │ │ │ ├── FLAnimatedImage.podspec │ │ │ │ ├── FLAnimatedImage.xcodeproj │ │ │ │ │ ├── project.pbxproj │ │ │ │ │ └── xcshareddata │ │ │ │ │ │ └── xcschemes │ │ │ │ │ │ └── FLAnimatedImage.xcscheme │ │ │ │ ├── FLAnimatedImage │ │ │ │ │ ├── FLAnimatedImage.h │ │ │ │ │ ├── FLAnimatedImage.m │ │ │ │ │ ├── FLAnimatedImageView.h │ │ │ │ │ ├── FLAnimatedImageView.m │ │ │ │ │ └── Info.plist │ │ │ │ ├── FLAnimatedImageDemo.xcodeproj │ │ │ │ │ └── project.pbxproj │ │ │ │ ├── FLAnimatedImageDemo │ │ │ │ │ ├── AppDelegate.h │ │ │ │ │ ├── AppDelegate.m │ │ │ │ │ ├── DebugView.h │ │ │ │ │ ├── DebugView.m │ │ │ │ │ ├── FLAnimatedImageDemo-Info.plist │ │ │ │ │ ├── FLAnimatedImageDemo-Prefix.pch │ │ │ │ │ ├── FrameCacheView.h │ │ │ │ │ ├── FrameCacheView.m │ │ │ │ │ ├── GraphView.h │ │ │ │ │ ├── GraphView.m │ │ │ │ │ ├── Images.xcassets │ │ │ │ │ │ ├── AppIcon.appiconset │ │ │ │ │ │ │ ├── Contents.json │ │ │ │ │ │ │ ├── Icon-76.png │ │ │ │ │ │ │ ├── Icon-76@2x.png │ │ │ │ │ │ │ └── Icon-83.5@2x.png │ │ │ │ │ │ └── LaunchImage.launchimage │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ ├── PlayheadView.h │ │ │ │ │ ├── PlayheadView.m │ │ │ │ │ ├── RSPlayPauseButton.h │ │ │ │ │ ├── RSPlayPauseButton.m │ │ │ │ │ ├── RootViewController.h │ │ │ │ │ ├── RootViewController.m │ │ │ │ │ ├── en.lproj │ │ │ │ │ │ └── InfoPlist.strings │ │ │ │ │ ├── main.m │ │ │ │ │ └── test-gifs │ │ │ │ │ │ └── rock.gif │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ └── images │ │ │ │ │ └── flanimatedimage-demo-player.gif │ │ │ └── libwebp │ │ │ │ ├── AUTHORS │ │ │ │ ├── Android.mk │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── COPYING │ │ │ │ ├── ChangeLog │ │ │ │ ├── Makefile.am │ │ │ │ ├── Makefile.vc │ │ │ │ ├── NEWS │ │ │ │ ├── PATENTS │ │ │ │ ├── README │ │ │ │ ├── README.mux │ │ │ │ ├── autogen.sh │ │ │ │ ├── build.gradle │ │ │ │ ├── cmake │ │ │ │ └── config.h.in │ │ │ │ ├── configure.ac │ │ │ │ ├── doc │ │ │ │ ├── README │ │ │ │ ├── TODO │ │ │ │ ├── template.html │ │ │ │ ├── webp-container-spec.txt │ │ │ │ └── webp-lossless-bitstream-spec.txt │ │ │ │ ├── examples │ │ │ │ ├── Android.mk │ │ │ │ ├── Makefile.am │ │ │ │ ├── anim_diff.c │ │ │ │ ├── anim_util.c │ │ │ │ ├── anim_util.h │ │ │ │ ├── cwebp.c │ │ │ │ ├── dwebp.c │ │ │ │ ├── example_util.c │ │ │ │ ├── example_util.h │ │ │ │ ├── gif2webp.c │ │ │ │ ├── gifdec.c │ │ │ │ ├── gifdec.h │ │ │ │ ├── image_dec.c │ │ │ │ ├── image_dec.h │ │ │ │ ├── jpegdec.c │ │ │ │ ├── jpegdec.h │ │ │ │ ├── metadata.c │ │ │ │ ├── metadata.h │ │ │ │ ├── pngdec.c │ │ │ │ ├── pngdec.h │ │ │ │ ├── stopwatch.h │ │ │ │ ├── test.webp │ │ │ │ ├── test_ref.ppm │ │ │ │ ├── tiffdec.c │ │ │ │ ├── tiffdec.h │ │ │ │ ├── vwebp.c │ │ │ │ ├── webpdec.c │ │ │ │ ├── webpdec.h │ │ │ │ ├── webpmux.c │ │ │ │ ├── wicdec.c │ │ │ │ └── wicdec.h │ │ │ │ ├── gradle.properties │ │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ │ ├── gradlew │ │ │ │ ├── gradlew.bat │ │ │ │ ├── iosbuild.sh │ │ │ │ ├── m4 │ │ │ │ └── ax_pthread.m4 │ │ │ │ ├── makefile.unix │ │ │ │ ├── man │ │ │ │ ├── Makefile.am │ │ │ │ ├── cwebp.1 │ │ │ │ ├── dwebp.1 │ │ │ │ ├── gif2webp.1 │ │ │ │ ├── vwebp.1 │ │ │ │ └── webpmux.1 │ │ │ │ ├── src │ │ │ │ ├── Makefile.am │ │ │ │ ├── dec │ │ │ │ │ ├── Makefile.am │ │ │ │ │ ├── alpha.c │ │ │ │ │ ├── alphai.h │ │ │ │ │ ├── buffer.c │ │ │ │ │ ├── common.h │ │ │ │ │ ├── decode_vp8.h │ │ │ │ │ ├── frame.c │ │ │ │ │ ├── idec.c │ │ │ │ │ ├── io.c │ │ │ │ │ ├── quant.c │ │ │ │ │ ├── tree.c │ │ │ │ │ ├── vp8.c │ │ │ │ │ ├── vp8i.h │ │ │ │ │ ├── vp8l.c │ │ │ │ │ ├── vp8li.h │ │ │ │ │ ├── webp.c │ │ │ │ │ └── webpi.h │ │ │ │ ├── demux │ │ │ │ │ ├── Makefile.am │ │ │ │ │ ├── anim_decode.c │ │ │ │ │ ├── demux.c │ │ │ │ │ └── libwebpdemux.pc.in │ │ │ │ ├── dsp │ │ │ │ │ ├── Makefile.am │ │ │ │ │ ├── alpha_processing.c │ │ │ │ │ ├── alpha_processing_mips_dsp_r2.c │ │ │ │ │ ├── alpha_processing_sse2.c │ │ │ │ │ ├── alpha_processing_sse41.c │ │ │ │ │ ├── argb.c │ │ │ │ │ ├── argb_mips_dsp_r2.c │ │ │ │ │ ├── argb_sse2.c │ │ │ │ │ ├── common_sse2.h │ │ │ │ │ ├── cost.c │ │ │ │ │ ├── cost_mips32.c │ │ │ │ │ ├── cost_mips_dsp_r2.c │ │ │ │ │ ├── cost_sse2.c │ │ │ │ │ ├── cpu.c │ │ │ │ │ ├── dec.c │ │ │ │ │ ├── dec_clip_tables.c │ │ │ │ │ ├── dec_mips32.c │ │ │ │ │ ├── dec_mips_dsp_r2.c │ │ │ │ │ ├── dec_msa.c │ │ │ │ │ ├── dec_neon.c │ │ │ │ │ ├── dec_sse2.c │ │ │ │ │ ├── dec_sse41.c │ │ │ │ │ ├── dsp.h │ │ │ │ │ ├── enc.c │ │ │ │ │ ├── enc_avx2.c │ │ │ │ │ ├── enc_mips32.c │ │ │ │ │ ├── enc_mips_dsp_r2.c │ │ │ │ │ ├── enc_neon.c │ │ │ │ │ ├── enc_sse2.c │ │ │ │ │ ├── enc_sse41.c │ │ │ │ │ ├── filters.c │ │ │ │ │ ├── filters_mips_dsp_r2.c │ │ │ │ │ ├── filters_sse2.c │ │ │ │ │ ├── lossless.c │ │ │ │ │ ├── lossless.h │ │ │ │ │ ├── lossless_enc.c │ │ │ │ │ ├── lossless_enc_mips32.c │ │ │ │ │ ├── lossless_enc_mips_dsp_r2.c │ │ │ │ │ ├── lossless_enc_neon.c │ │ │ │ │ ├── lossless_enc_sse2.c │ │ │ │ │ ├── lossless_enc_sse41.c │ │ │ │ │ ├── lossless_mips_dsp_r2.c │ │ │ │ │ ├── lossless_neon.c │ │ │ │ │ ├── lossless_sse2.c │ │ │ │ │ ├── mips_macro.h │ │ │ │ │ ├── msa_macro.h │ │ │ │ │ ├── neon.h │ │ │ │ │ ├── rescaler.c │ │ │ │ │ ├── rescaler_mips32.c │ │ │ │ │ ├── rescaler_mips_dsp_r2.c │ │ │ │ │ ├── rescaler_neon.c │ │ │ │ │ ├── rescaler_sse2.c │ │ │ │ │ ├── upsampling.c │ │ │ │ │ ├── upsampling_mips_dsp_r2.c │ │ │ │ │ ├── upsampling_neon.c │ │ │ │ │ ├── upsampling_sse2.c │ │ │ │ │ ├── yuv.c │ │ │ │ │ ├── yuv.h │ │ │ │ │ ├── yuv_mips32.c │ │ │ │ │ ├── yuv_mips_dsp_r2.c │ │ │ │ │ └── yuv_sse2.c │ │ │ │ ├── enc │ │ │ │ │ ├── Makefile.am │ │ │ │ │ ├── alpha.c │ │ │ │ │ ├── analysis.c │ │ │ │ │ ├── backward_references.c │ │ │ │ │ ├── backward_references.h │ │ │ │ │ ├── config.c │ │ │ │ │ ├── cost.c │ │ │ │ │ ├── cost.h │ │ │ │ │ ├── delta_palettization.c │ │ │ │ │ ├── delta_palettization.h │ │ │ │ │ ├── filter.c │ │ │ │ │ ├── frame.c │ │ │ │ │ ├── histogram.c │ │ │ │ │ ├── histogram.h │ │ │ │ │ ├── iterator.c │ │ │ │ │ ├── near_lossless.c │ │ │ │ │ ├── picture.c │ │ │ │ │ ├── picture_csp.c │ │ │ │ │ ├── picture_psnr.c │ │ │ │ │ ├── picture_rescale.c │ │ │ │ │ ├── picture_tools.c │ │ │ │ │ ├── quant.c │ │ │ │ │ ├── syntax.c │ │ │ │ │ ├── token.c │ │ │ │ │ ├── tree.c │ │ │ │ │ ├── vp8enci.h │ │ │ │ │ ├── vp8l.c │ │ │ │ │ ├── vp8li.h │ │ │ │ │ └── webpenc.c │ │ │ │ ├── extras │ │ │ │ │ ├── Makefile.am │ │ │ │ │ ├── extras.c │ │ │ │ │ └── libwebpextras.pc.in │ │ │ │ ├── libwebp.pc.in │ │ │ │ ├── libwebpdecoder.pc.in │ │ │ │ ├── mux │ │ │ │ │ ├── Makefile.am │ │ │ │ │ ├── anim_encode.c │ │ │ │ │ ├── libwebpmux.pc.in │ │ │ │ │ ├── muxedit.c │ │ │ │ │ ├── muxi.h │ │ │ │ │ ├── muxinternal.c │ │ │ │ │ └── muxread.c │ │ │ │ ├── utils │ │ │ │ │ ├── Makefile.am │ │ │ │ │ ├── bit_reader.c │ │ │ │ │ ├── bit_reader.h │ │ │ │ │ ├── bit_reader_inl.h │ │ │ │ │ ├── bit_writer.c │ │ │ │ │ ├── bit_writer.h │ │ │ │ │ ├── color_cache.c │ │ │ │ │ ├── color_cache.h │ │ │ │ │ ├── endian_inl.h │ │ │ │ │ ├── filters.c │ │ │ │ │ ├── filters.h │ │ │ │ │ ├── huffman.c │ │ │ │ │ ├── huffman.h │ │ │ │ │ ├── huffman_encode.c │ │ │ │ │ ├── huffman_encode.h │ │ │ │ │ ├── quant_levels.c │ │ │ │ │ ├── quant_levels.h │ │ │ │ │ ├── quant_levels_dec.c │ │ │ │ │ ├── quant_levels_dec.h │ │ │ │ │ ├── random.c │ │ │ │ │ ├── random.h │ │ │ │ │ ├── rescaler.c │ │ │ │ │ ├── rescaler.h │ │ │ │ │ ├── thread.c │ │ │ │ │ ├── thread.h │ │ │ │ │ ├── utils.c │ │ │ │ │ └── utils.h │ │ │ │ └── webp │ │ │ │ │ ├── decode.h │ │ │ │ │ ├── demux.h │ │ │ │ │ ├── encode.h │ │ │ │ │ ├── extras.h │ │ │ │ │ ├── format_constants.h │ │ │ │ │ ├── mux.h │ │ │ │ │ ├── mux_types.h │ │ │ │ │ └── types.h │ │ │ │ └── swig │ │ │ │ ├── README │ │ │ │ ├── libwebp.go │ │ │ │ ├── libwebp.jar │ │ │ │ ├── libwebp.py │ │ │ │ ├── libwebp.swig │ │ │ │ ├── libwebp_gc.c │ │ │ │ ├── libwebp_go_wrap.c │ │ │ │ ├── libwebp_java_wrap.c │ │ │ │ ├── libwebp_python_wrap.c │ │ │ │ └── setup.py │ │ ├── WebImage │ │ │ ├── Info.plist │ │ │ └── SDWebImage.h │ │ ├── dec │ │ │ ├── Makefile.am │ │ │ ├── alpha.c │ │ │ ├── alphai.h │ │ │ ├── buffer.c │ │ │ ├── common.h │ │ │ ├── decode_vp8.h │ │ │ ├── frame.c │ │ │ ├── idec.c │ │ │ ├── io.c │ │ │ ├── quant.c │ │ │ ├── tree.c │ │ │ ├── vp8.c │ │ │ ├── vp8i.h │ │ │ ├── vp8l.c │ │ │ ├── vp8li.h │ │ │ ├── webp.c │ │ │ └── webpi.h │ │ ├── demux │ │ │ ├── Makefile.am │ │ │ ├── anim_decode.c │ │ │ ├── demux.c │ │ │ └── libwebpdemux.pc.in │ │ ├── dsp │ │ │ ├── Makefile.am │ │ │ ├── alpha_processing.c │ │ │ ├── alpha_processing_mips_dsp_r2.c │ │ │ ├── alpha_processing_sse2.c │ │ │ ├── alpha_processing_sse41.c │ │ │ ├── argb.c │ │ │ ├── argb_mips_dsp_r2.c │ │ │ ├── argb_sse2.c │ │ │ ├── common_sse2.h │ │ │ ├── cost.c │ │ │ ├── cost_mips32.c │ │ │ ├── cost_mips_dsp_r2.c │ │ │ ├── cost_sse2.c │ │ │ ├── cpu.c │ │ │ ├── dec.c │ │ │ ├── dec_clip_tables.c │ │ │ ├── dec_mips32.c │ │ │ ├── dec_mips_dsp_r2.c │ │ │ ├── dec_msa.c │ │ │ ├── dec_neon.c │ │ │ ├── dec_sse2.c │ │ │ ├── dec_sse41.c │ │ │ ├── dsp.h │ │ │ ├── enc.c │ │ │ ├── enc_avx2.c │ │ │ ├── enc_mips32.c │ │ │ ├── enc_mips_dsp_r2.c │ │ │ ├── enc_neon.c │ │ │ ├── enc_sse2.c │ │ │ ├── enc_sse41.c │ │ │ ├── filters.c │ │ │ ├── filters_mips_dsp_r2.c │ │ │ ├── filters_sse2.c │ │ │ ├── lossless.c │ │ │ ├── lossless.h │ │ │ ├── lossless_enc.c │ │ │ ├── lossless_enc_mips32.c │ │ │ ├── lossless_enc_mips_dsp_r2.c │ │ │ ├── lossless_enc_neon.c │ │ │ ├── lossless_enc_sse2.c │ │ │ ├── lossless_enc_sse41.c │ │ │ ├── lossless_mips_dsp_r2.c │ │ │ ├── lossless_neon.c │ │ │ ├── lossless_sse2.c │ │ │ ├── mips_macro.h │ │ │ ├── msa_macro.h │ │ │ ├── neon.h │ │ │ ├── rescaler.c │ │ │ ├── rescaler_mips32.c │ │ │ ├── rescaler_mips_dsp_r2.c │ │ │ ├── rescaler_neon.c │ │ │ ├── rescaler_sse2.c │ │ │ ├── upsampling.c │ │ │ ├── upsampling_mips_dsp_r2.c │ │ │ ├── upsampling_neon.c │ │ │ ├── upsampling_sse2.c │ │ │ ├── yuv.c │ │ │ ├── yuv.h │ │ │ ├── yuv_mips32.c │ │ │ ├── yuv_mips_dsp_r2.c │ │ │ └── yuv_sse2.c │ │ ├── utils │ │ │ ├── Makefile.am │ │ │ ├── bit_reader.c │ │ │ ├── bit_reader.h │ │ │ ├── bit_reader_inl.h │ │ │ ├── bit_writer.c │ │ │ ├── bit_writer.h │ │ │ ├── color_cache.c │ │ │ ├── color_cache.h │ │ │ ├── endian_inl.h │ │ │ ├── filters.c │ │ │ ├── filters.h │ │ │ ├── huffman.c │ │ │ ├── huffman.h │ │ │ ├── huffman_encode.c │ │ │ ├── huffman_encode.h │ │ │ ├── quant_levels.c │ │ │ ├── quant_levels.h │ │ │ ├── quant_levels_dec.c │ │ │ ├── quant_levels_dec.h │ │ │ ├── random.c │ │ │ ├── random.h │ │ │ ├── rescaler.c │ │ │ ├── rescaler.h │ │ │ ├── thread.c │ │ │ ├── thread.h │ │ │ ├── utils.c │ │ │ └── utils.h │ │ └── webp │ │ │ ├── decode.h │ │ │ ├── demux.h │ │ │ ├── encode.h │ │ │ ├── extras.h │ │ │ ├── format_constants.h │ │ │ ├── mux.h │ │ │ ├── mux_types.h │ │ │ └── types.h │ ├── SideMenu │ │ ├── GShadowView.h │ │ ├── GShadowView.m │ │ ├── GSideCoverView.h │ │ ├── GSideCoverView.m │ │ ├── GSideMenuController.h │ │ └── GSideMenuController.m │ ├── SlimeRefresh │ │ ├── SRDefine.h │ │ ├── SRRefreshView.h │ │ ├── SRRefreshView.m │ │ ├── SRSlimeView.h │ │ ├── SRSlimeView.m │ │ ├── sr_refresh.png │ │ └── sr_refresh@2X.png │ ├── Tween │ │ ├── GCallback.h │ │ ├── GCallback.m │ │ ├── GEase.h │ │ ├── GEase.m │ │ ├── GTween.h │ │ ├── GTween.m │ │ ├── GTweenProperty.h │ │ ├── GTweenProperty.m │ │ ├── GValue.h │ │ └── GValue.m │ ├── duktape │ │ ├── duk_config.h │ │ ├── duktape.c │ │ └── duktape.h │ ├── gumbo │ │ ├── attribute.c │ │ ├── attribute.h │ │ ├── char_ref.c │ │ ├── char_ref.h │ │ ├── error.c │ │ ├── error.h │ │ ├── gumbo-query │ │ │ ├── Document.cpp │ │ │ ├── Document.h │ │ │ ├── Node.cpp │ │ │ ├── Node.h │ │ │ ├── Object.cpp │ │ │ ├── Object.h │ │ │ ├── Parser.cpp │ │ │ ├── Parser.h │ │ │ ├── QueryUtil.cpp │ │ │ ├── QueryUtil.h │ │ │ ├── Selection.cpp │ │ │ ├── Selection.h │ │ │ ├── Selector.cpp │ │ │ └── Selector.h │ │ ├── gumbo.h │ │ ├── insertion_mode.h │ │ ├── parser.c │ │ ├── parser.h │ │ ├── string_buffer.c │ │ ├── string_buffer.h │ │ ├── string_piece.c │ │ ├── string_piece.h │ │ ├── tag.c │ │ ├── tag_enum.h │ │ ├── tag_gperf.h │ │ ├── tag_sizes.h │ │ ├── tag_strings.h │ │ ├── token_type.h │ │ ├── tokenizer.c │ │ ├── tokenizer.h │ │ ├── tokenizer_states.h │ │ ├── utf8.c │ │ ├── utf8.h │ │ ├── util.c │ │ ├── util.h │ │ ├── vector.c │ │ └── vector.h │ └── mruby │ │ ├── mruby.xcodeproj │ │ ├── project.pbxproj │ │ ├── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ │ └── xcuserdata │ │ │ └── mac.xcuserdatad │ │ │ └── xcschemes │ │ │ ├── mruby.xcscheme │ │ │ └── xcschememanagement.plist │ │ └── mruby │ │ ├── include │ │ ├── mrbconf.h │ │ ├── mruby.h │ │ └── mruby │ │ │ ├── array.h │ │ │ ├── boxing_nan.h │ │ │ ├── boxing_no.h │ │ │ ├── boxing_word.h │ │ │ ├── class.h │ │ │ ├── common.h │ │ │ ├── compile.h │ │ │ ├── data.h │ │ │ ├── debug.h │ │ │ ├── dump.h │ │ │ ├── error.h │ │ │ ├── gc.h │ │ │ ├── hash.h │ │ │ ├── irep.h │ │ │ ├── khash.h │ │ │ ├── numeric.h │ │ │ ├── object.h │ │ │ ├── opcode.h │ │ │ ├── proc.h │ │ │ ├── range.h │ │ │ ├── re.h │ │ │ ├── string.h │ │ │ ├── throw.h │ │ │ ├── value.h │ │ │ ├── variable.h │ │ │ └── version.h │ │ ├── lib │ │ └── mruby │ │ │ └── source.rb │ │ ├── mrbgems │ │ ├── gem_init.c │ │ ├── mruby-array-ext │ │ │ ├── gem_init.c │ │ │ ├── mrblib │ │ │ │ └── array.rb │ │ │ └── src │ │ │ │ └── array.c │ │ ├── mruby-compiler │ │ │ ├── bintest │ │ │ │ └── mrbc.rb │ │ │ ├── core │ │ │ │ ├── codegen.c │ │ │ │ ├── keywords │ │ │ │ ├── lex.def │ │ │ │ ├── node.h │ │ │ │ └── y.tab.c │ │ │ └── mrbgem.rake │ │ ├── mruby-dir │ │ │ ├── gem_init.c │ │ │ └── src │ │ │ │ └── dir.c │ │ ├── mruby-enum-ext │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── enum.rb │ │ │ └── test │ │ │ │ └── enum.rb │ │ ├── mruby-enum-lazy │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── lazy.rb │ │ │ └── test │ │ │ │ └── lazy.rb │ │ ├── mruby-enumerator │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── enumerator.rb │ │ │ └── test │ │ │ │ └── enumerator.rb │ │ ├── mruby-env │ │ │ ├── .travis.yml │ │ │ ├── gem_init.c │ │ │ └── src │ │ │ │ └── env.c │ │ ├── mruby-eval │ │ │ ├── gem_init.c │ │ │ └── src │ │ │ │ └── eval.c │ │ ├── mruby-fiber │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── src │ │ │ │ └── fiber.c │ │ │ └── test │ │ │ │ └── fiber.rb │ │ ├── mruby-hash-ext │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── hash.rb │ │ │ ├── src │ │ │ │ └── hash-ext.c │ │ │ └── test │ │ │ │ └── hash.rb │ │ ├── mruby-http │ │ │ ├── gem_init.c │ │ │ ├── include │ │ │ │ ├── http_parser.h │ │ │ │ └── mrb_http.h │ │ │ └── src │ │ │ │ ├── http_parser.c │ │ │ │ └── mrb_http.c │ │ ├── mruby-io │ │ │ ├── .travis.yml │ │ │ ├── gem_init.c │ │ │ ├── include │ │ │ │ └── mruby │ │ │ │ │ └── ext │ │ │ │ │ └── io.h │ │ │ └── src │ │ │ │ ├── file.c │ │ │ │ ├── file_test.c │ │ │ │ ├── io.c │ │ │ │ └── mruby_io_gem.c │ │ ├── mruby-json │ │ │ ├── gem_init.c │ │ │ └── src │ │ │ │ ├── mrb_json.c │ │ │ │ ├── parson.c │ │ │ │ └── parson.h │ │ ├── mruby-kernel-ext │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── src │ │ │ │ └── kernel.c │ │ │ └── test │ │ │ │ └── kernel.rb │ │ ├── mruby-math │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── src │ │ │ │ └── math.c │ │ │ └── test │ │ │ │ └── math.rb │ │ ├── mruby-numeric-ext │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── numeric_ext.rb │ │ │ ├── src │ │ │ │ └── numeric_ext.c │ │ │ └── test │ │ │ │ └── numeric.rb │ │ ├── mruby-object-ext │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── object.rb │ │ │ ├── src │ │ │ │ └── object.c │ │ │ └── test │ │ │ │ ├── nil.rb │ │ │ │ └── object.rb │ │ ├── mruby-objectspace │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── src │ │ │ │ └── mruby_objectspace.c │ │ │ └── test │ │ │ │ └── objectspace.rb │ │ ├── mruby-onig-regexp │ │ │ ├── gem_init.c │ │ │ └── src │ │ │ │ └── mruby_onig_regexp.c │ │ ├── mruby-print │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── print.rb │ │ │ └── src │ │ │ │ └── print.c │ │ ├── mruby-proc-ext │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── proc.rb │ │ │ ├── src │ │ │ │ └── proc.c │ │ │ └── test │ │ │ │ ├── proc.c │ │ │ │ └── proc.rb │ │ ├── mruby-random │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── src │ │ │ │ ├── mt19937ar.c │ │ │ │ ├── mt19937ar.h │ │ │ │ ├── random.c │ │ │ │ └── random.h │ │ │ └── test │ │ │ │ └── random.rb │ │ ├── mruby-range-ext │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── src │ │ │ │ └── range.c │ │ │ └── test │ │ │ │ └── range.rb │ │ ├── mruby-require │ │ │ ├── .travis.yml │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ └── src │ │ │ │ └── require.c │ │ ├── mruby-sprintf │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── string.rb │ │ │ ├── src │ │ │ │ ├── kernel.c │ │ │ │ └── sprintf.c │ │ │ └── test │ │ │ │ └── sprintf.rb │ │ ├── mruby-string-ext │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── string.rb │ │ │ ├── src │ │ │ │ └── string.c │ │ │ └── test │ │ │ │ └── string.rb │ │ ├── mruby-struct │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── struct.rb │ │ │ ├── src │ │ │ │ └── struct.c │ │ │ └── test │ │ │ │ └── struct.rb │ │ ├── mruby-symbol-ext │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── symbol.rb │ │ │ ├── src │ │ │ │ └── symbol.c │ │ │ └── test │ │ │ │ └── symbol.rb │ │ ├── mruby-tempfile │ │ │ ├── .travis.yml │ │ │ ├── gem_init.c │ │ │ └── src │ │ │ │ └── tempfile.c │ │ ├── mruby-time │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ │ └── time.rb │ │ │ ├── src │ │ │ │ └── time.c │ │ │ └── test │ │ │ │ └── time.rb │ │ └── mruby-toplevel-ext │ │ │ ├── gem_init.c │ │ │ ├── mrbgem.rake │ │ │ ├── mrblib │ │ │ └── toplevel.rb │ │ │ └── test │ │ │ └── toplevel.rb │ │ ├── mrblib │ │ └── mrblib.c │ │ └── src │ │ ├── array.c │ │ ├── backtrace.c │ │ ├── class.c │ │ ├── codedump.c │ │ ├── compar.c │ │ ├── crc.c │ │ ├── debug.c │ │ ├── dump.c │ │ ├── enum.c │ │ ├── error.c │ │ ├── error.h │ │ ├── etc.c │ │ ├── ext │ │ └── .gitkeep │ │ ├── fmt_fp.c │ │ ├── gc.c │ │ ├── hash.c │ │ ├── init.c │ │ ├── kernel.c │ │ ├── load.c │ │ ├── mruby_core.rake │ │ ├── numeric.c │ │ ├── object.c │ │ ├── opcode.h │ │ ├── pool.c │ │ ├── print.c │ │ ├── proc.c │ │ ├── range.c │ │ ├── state.c │ │ ├── string.c │ │ ├── symbol.c │ │ ├── value_array.h │ │ ├── variable.c │ │ ├── version.c │ │ └── vm.c ├── Views │ ├── Cells │ │ ├── GSBottomLoadingCell.h │ │ ├── GSBottomLoadingCell.m │ │ ├── GSChapterCell.h │ │ ├── GSChapterCell.m │ │ ├── GSInputCell.h │ │ ├── GSInputCell.m │ │ ├── GSProcessCell.h │ │ ├── GSProcessCell.mm │ │ ├── GSSelectCell.h │ │ ├── GSSelectCell.m │ │ ├── GSShopCell.h │ │ ├── GSShopCell.m │ │ ├── GSSwitchCell.h │ │ └── GSSwitchCell.m │ └── Widgets │ │ ├── GSBadgeView.h │ │ ├── GSBadgeView.m │ │ ├── GSCoverSelectView.h │ │ ├── GSCoverSelectView.m │ │ ├── GSDragView.h │ │ ├── GSDragView.m │ │ ├── GSLoadingView.h │ │ ├── GSLoadingView.m │ │ ├── GSPartView.h │ │ ├── GSPartView.m │ │ ├── GSPictureCell.h │ │ ├── GSPictureCell.mm │ │ ├── GSRadiusImageView.h │ │ ├── GSRadiusImageView.m │ │ ├── GSSelectView.h │ │ ├── GSSelectView.m │ │ ├── GSTitleInnerButton.h │ │ ├── GSTitleInnerButton.m │ │ ├── GSWidgetButton.h │ │ └── GSWidgetButton.m ├── en.lproj │ ├── InfoPlist.strings │ └── Localizable.strings ├── include │ └── duktape │ │ └── duktape.h ├── main.m ├── nl_define.h └── zh-Hans.lproj │ ├── InfoPlist.strings │ └── Localizable.strings ├── LICENSE.txt └── README.md /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "GenS/Common"] 2 | path = GenS/Common 3 | url = https://github.com/dbsGen/GenShelf_Common.git 4 | [submodule "GenS/grender"] 5 | path = GenS/grender 6 | url = https://github.com/dbsGen/grender.git 7 | [submodule "GenS/Datas/ruby/hiengine"] 8 | path = GenS/Datas/ruby/hiengine 9 | url = https://github.com/dbsGen/GenShelf_Ruby.git 10 | -------------------------------------------------------------------------------- /GenS.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GenS.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /GenS.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS.xcodeproj/project.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GenS/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // GenS 4 | // 5 | // Created by gen on 16/05/2017. 6 | // Copyright © 2017 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /GenS/Assets.xcassets/AppIcon.appiconset/AppIcon29x29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Assets.xcassets/AppIcon.appiconset/AppIcon29x29@2x.png -------------------------------------------------------------------------------- /GenS/Assets.xcassets/AppIcon.appiconset/AppIcon29x29@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Assets.xcassets/AppIcon.appiconset/AppIcon29x29@2x~ipad.png -------------------------------------------------------------------------------- /GenS/Assets.xcassets/AppIcon.appiconset/AppIcon29x29~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Assets.xcassets/AppIcon.appiconset/AppIcon29x29~ipad.png -------------------------------------------------------------------------------- /GenS/Assets.xcassets/AppIcon.appiconset/AppIcon40x40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Assets.xcassets/AppIcon.appiconset/AppIcon40x40@2x.png -------------------------------------------------------------------------------- /GenS/Assets.xcassets/AppIcon.appiconset/AppIcon40x40@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Assets.xcassets/AppIcon.appiconset/AppIcon40x40@2x~ipad.png -------------------------------------------------------------------------------- /GenS/Assets.xcassets/AppIcon.appiconset/AppIcon40x40~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Assets.xcassets/AppIcon.appiconset/AppIcon40x40~ipad.png -------------------------------------------------------------------------------- /GenS/Assets.xcassets/AppIcon.appiconset/AppIcon60x60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Assets.xcassets/AppIcon.appiconset/AppIcon60x60@2x.png -------------------------------------------------------------------------------- /GenS/Assets.xcassets/AppIcon.appiconset/AppIcon76x76@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Assets.xcassets/AppIcon.appiconset/AppIcon76x76@2x~ipad.png -------------------------------------------------------------------------------- /GenS/Assets.xcassets/AppIcon.appiconset/AppIcon76x76~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Assets.xcassets/AppIcon.appiconset/AppIcon76x76~ipad.png -------------------------------------------------------------------------------- /GenS/Controllers/GSBookInfoViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSBookInfoViewController.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/5/17. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSBookInfoViewController : UIViewController 12 | 13 | @property (nonatomic, copy) void (^closeBlock)(); 14 | @property (nonatomic, copy) void (^pushController)(UIViewController *); 15 | 16 | - (id)initWithBook:(void*)book library:(void*)library shop:(void*)shop; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /GenS/Controllers/GSHomeController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSHomeController.h 3 | // GenShelf 4 | // 5 | // Created by Gen on 16/2/20. 6 | // Copyright © 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import "GSideMenuController.h" 10 | 11 | @interface GSHomeController : GSideMenuController 12 | 13 | + (void)setNevIndex:(int)idx; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Controllers/GSLibraryViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSLibraryViewController.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/5/16. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSLibraryViewController : UIViewController 12 | 13 | @property (nonatomic, strong) UITableView *tableView; 14 | + (void)setReloadCache:(BOOL)reload; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /GenS/Controllers/GSLocalBookInfoViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSLocalBookInfoViewController.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/5/20. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSLocalBookInfoViewController : UIViewController 12 | 13 | 14 | @property (nonatomic, copy) void (^closeBlock)(); 15 | @property (nonatomic, copy) void (^pushController)(UIViewController *); 16 | @property (nonatomic, copy) void (^allRemoved)(); 17 | 18 | - (id)initWithBook:(void*)book; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /GenS/Controllers/GSProcessViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSProcessViewController.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/9/3. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSProcessViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /GenS/Controllers/GSReadViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSReadViewController.h 3 | // GenS 4 | // 5 | // Created by gen on 18/05/2017. 6 | // Copyright © 2017 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @protocol GSReadViewControllerDelegate 12 | 13 | - (void*)prevChapter:(void*)chapter; 14 | - (void*)nextChapter:(void*)chapter; 15 | 16 | - (void)collect:(void *)chapter; 17 | 18 | @end 19 | 20 | @interface GSReadViewController : UIViewController 21 | 22 | @property (nonatomic, weak) id delegate; 23 | 24 | - (id)initWithChapter:(void*)chapter shop:(void*)shop; 25 | - (id)initWithChapter:(void*)chapter shop:(void*)shop book:(void*)book; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /GenS/Controllers/GSSearchViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSSearchViewController.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/5/16. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSSearchViewController : UIViewController 12 | 13 | - (id)initWithLibrary:(void*)library; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Controllers/GSSettingViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSSettingViewController.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/5/16. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSSettingViewController : UIViewController 12 | 13 | @property (nonatomic, copy) void(^closeCoverBlock)(); 14 | - (id)initWithShop:(void*)shop; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /GenS/Controllers/GSShelfViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSShelfViewController.h 3 | // GenShelf 4 | // 5 | // Created by Gen on 16/2/19. 6 | // Copyright © 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSShelfViewController : UIViewController 12 | 13 | + (void)setReloadCache:(BOOL)reload; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Controllers/GSShelfsViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSShelfsViewController.h 3 | // GenS 4 | // 5 | // Created by gen on 16/05/2017. 6 | // Copyright © 2017 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @protocol GSShelfsViewControllerDelegate 12 | 13 | - (void)shelfBadgeChanged:(NSInteger)number; 14 | 15 | @end 16 | 17 | @interface GSShelfsViewController : UIViewController { 18 | 19 | } 20 | 21 | @property (nonatomic, strong) UITableView *tableView; 22 | @property (nonatomic, weak) id delegate; 23 | 24 | - (void)requestOnBegin; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /GenS/Controllers/GSShopInfoViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSShopInfoViewController.h 3 | // GenS 4 | // 5 | // Created by gen on 16/05/2017. 6 | // Copyright © 2017 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSShopInfoViewController : UIViewController 12 | 13 | @property (nonatomic, copy) void (^closeBlock)(); 14 | @property (nonatomic, copy) void (^settingBlock)(void *); 15 | 16 | - (id)initWithLocalShop:(void*)localShop onlineShop:(void*)onlineShop; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /GenS/Controllers/GSWebViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSWebViewController.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/7/25. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSWebViewController : UIViewController 12 | 13 | @property (nonatomic, strong) NSURL *url; 14 | - (void)setCallback:(void*)callback; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /GenS/Datas/ruby/t_root/config.rb: -------------------------------------------------------------------------------- 1 | require 'library' 2 | require 'reader' 3 | require 'settings' 4 | 5 | $config = { 6 | library: Library, 7 | reader: Reader, 8 | settings: Settings 9 | } 10 | -------------------------------------------------------------------------------- /GenS/Datas/ruby/t_root/pre.js: -------------------------------------------------------------------------------- 1 | var search = { 2 | renderResult: function (obj) { 3 | return JSON.stringify(obj); 4 | } 5 | } -------------------------------------------------------------------------------- /GenS/Datas/ruby/t_root/read.js: -------------------------------------------------------------------------------- 1 | var getPages = function() { 2 | if (this['arr_pages']) { 3 | return arr_pages; 4 | }else { 5 | var data = JSON.parse(pages.replace(/\r\n/g, '|')); 6 | return data.page_url.split('|'); 7 | } 8 | }; -------------------------------------------------------------------------------- /GenS/Datas/ruby/t_root/settings.rb: -------------------------------------------------------------------------------- 1 | require 'models' 2 | 3 | class Settings < HiEngine::Object 4 | 5 | def process 6 | item = SettingItem.new 7 | item.name = '状态' 8 | item.type = 1 9 | item.params = [ 10 | "全部", 11 | "连载中", 12 | "已完结" 13 | ] 14 | addItem item 15 | 16 | item = SettingItem.new 17 | item.name = '分类' 18 | item.type = 1 19 | item.params = [ 20 | "全部", 21 | "少年漫画", 22 | "少女漫画", 23 | "青年漫画" 24 | ] 25 | addItem item 26 | 27 | item = SettingItem.new 28 | item.name = '地域' 29 | item.type = 1 30 | item.params = [ 31 | "全部", 32 | "日本", 33 | "韩国", 34 | "欧美", 35 | "港台", 36 | "内地", 37 | "其他" 38 | ] 39 | addItem item 40 | 41 | item = SettingItem.new 42 | item.name = '题材' 43 | item.type = 1 44 | datas = JSON.parse(file('subject.json').text) 45 | item.params = datas.keys 46 | addItem item 47 | 48 | item = SettingItem.new 49 | item.name = '排序' 50 | item.type = 1 51 | item.params = [ 52 | "按照更新排序", 53 | "按照点击排序" 54 | ] 55 | addItem item 56 | end 57 | end -------------------------------------------------------------------------------- /GenS/Datas/ruby/t_root/subject.json: -------------------------------------------------------------------------------- 1 | { 2 | "全部": 0, 3 | "冒险": 4, 4 | "欢乐向": 5, 5 | "格斗": 6, 6 | "科幻": 7, 7 | "爱情": 8, 8 | "侦探": 9, 9 | "竞技": 10, 10 | "魔法": 11, 11 | "神鬼": 12, 12 | "校园": 13, 13 | "恐怖": 14, 14 | "其他": 16, 15 | "四格": 17, 16 | "生活": 3242, 17 | "百合": 3243, 18 | "伪娘": 3244, 19 | "悬疑": 3245, 20 | "耽美": 3246, 21 | "热血": 3248, 22 | "后宫": 3249, 23 | "历史": 3250, 24 | "战争": 3251, 25 | "萌系": 3252, 26 | "宅系": 3253, 27 | "治愈": 3254, 28 | "励志": 3255, 29 | "武侠": 3324, 30 | "机战": 3325, 31 | "音乐舞蹈": 3326, 32 | "美食": 3327, 33 | "职场": 3328, 34 | "西方魔幻": 3365, 35 | "高清单行": 4459, 36 | "性转换": 4518, 37 | "东方": 5077, 38 | "扶她": 5345, 39 | "魔幻": 5806, 40 | "奇幻": 5848, 41 | "节操": 6219, 42 | "轻小说": 6316, 43 | "颜艺": 6437, 44 | "搞笑": 7568, 45 | "仙侠": 7900 46 | } -------------------------------------------------------------------------------- /GenS/Resources/Icons/AppIcon29x29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/Icons/AppIcon29x29@2x.png -------------------------------------------------------------------------------- /GenS/Resources/Icons/AppIcon29x29@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/Icons/AppIcon29x29@2x~ipad.png -------------------------------------------------------------------------------- /GenS/Resources/Icons/AppIcon29x29~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/Icons/AppIcon29x29~ipad.png -------------------------------------------------------------------------------- /GenS/Resources/Icons/AppIcon40x40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/Icons/AppIcon40x40@2x.png -------------------------------------------------------------------------------- /GenS/Resources/Icons/AppIcon40x40@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/Icons/AppIcon40x40@2x~ipad.png -------------------------------------------------------------------------------- /GenS/Resources/Icons/AppIcon40x40~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/Icons/AppIcon40x40~ipad.png -------------------------------------------------------------------------------- /GenS/Resources/Icons/AppIcon60x60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/Icons/AppIcon60x60@2x.png -------------------------------------------------------------------------------- /GenS/Resources/Icons/AppIcon76x76@2x~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/Icons/AppIcon76x76@2x~ipad.png -------------------------------------------------------------------------------- /GenS/Resources/Icons/AppIcon76x76~ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/Icons/AppIcon76x76~ipad.png -------------------------------------------------------------------------------- /GenS/Resources/back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/back.png -------------------------------------------------------------------------------- /GenS/Resources/back@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/back@2x.png -------------------------------------------------------------------------------- /GenS/Resources/black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/black.png -------------------------------------------------------------------------------- /GenS/Resources/close@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/close@2x.png -------------------------------------------------------------------------------- /GenS/Resources/close@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/close@3x.png -------------------------------------------------------------------------------- /GenS/Resources/delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/delete.png -------------------------------------------------------------------------------- /GenS/Resources/delete@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/delete@2x.png -------------------------------------------------------------------------------- /GenS/Resources/done@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/done@3x.png -------------------------------------------------------------------------------- /GenS/Resources/download@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/download@3x.png -------------------------------------------------------------------------------- /GenS/Resources/edit@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/edit@2x.png -------------------------------------------------------------------------------- /GenS/Resources/edit@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/edit@3x.png -------------------------------------------------------------------------------- /GenS/Resources/failed@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/failed@2x.png -------------------------------------------------------------------------------- /GenS/Resources/failed@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/failed@3x.png -------------------------------------------------------------------------------- /GenS/Resources/heart@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/heart@2x.png -------------------------------------------------------------------------------- /GenS/Resources/heart@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/heart@3x.png -------------------------------------------------------------------------------- /GenS/Resources/home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/home.png -------------------------------------------------------------------------------- /GenS/Resources/home@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/home@2x.png -------------------------------------------------------------------------------- /GenS/Resources/home@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/home@3x.png -------------------------------------------------------------------------------- /GenS/Resources/menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/menu.png -------------------------------------------------------------------------------- /GenS/Resources/menu@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/menu@2x.png -------------------------------------------------------------------------------- /GenS/Resources/more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/more.png -------------------------------------------------------------------------------- /GenS/Resources/more@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/more@2x.png -------------------------------------------------------------------------------- /GenS/Resources/no_image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/no_image.png -------------------------------------------------------------------------------- /GenS/Resources/no_image@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/no_image@2x.png -------------------------------------------------------------------------------- /GenS/Resources/pause@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/pause@3x.png -------------------------------------------------------------------------------- /GenS/Resources/play@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/play@3x.png -------------------------------------------------------------------------------- /GenS/Resources/progress.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/progress.png -------------------------------------------------------------------------------- /GenS/Resources/progress@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/progress@2x.png -------------------------------------------------------------------------------- /GenS/Resources/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/search.png -------------------------------------------------------------------------------- /GenS/Resources/search@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/search@2x.png -------------------------------------------------------------------------------- /GenS/Resources/setting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/setting.png -------------------------------------------------------------------------------- /GenS/Resources/setting@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/setting@2x.png -------------------------------------------------------------------------------- /GenS/Resources/setting@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/setting@3x.png -------------------------------------------------------------------------------- /GenS/Resources/squares.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/squares.png -------------------------------------------------------------------------------- /GenS/Resources/squares@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/squares@2x.png -------------------------------------------------------------------------------- /GenS/Resources/squares@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/squares@3x.png -------------------------------------------------------------------------------- /GenS/Resources/stop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/stop.png -------------------------------------------------------------------------------- /GenS/Resources/stop@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/stop@2x.png -------------------------------------------------------------------------------- /GenS/Resources/tri.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Resources/tri.png -------------------------------------------------------------------------------- /GenS/Utils/CacheManager/MTLocationCache.h: -------------------------------------------------------------------------------- 1 | // 2 | // MTLocationCache.h 3 | // NetWorkTest 4 | // 5 | // Created by zrz on 12-3-2. 6 | // Copyright (c) 2012年 zrz. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "MTNetCacheElement.h" 11 | 12 | @interface MTLocationCache : NSObject { 13 | NSMutableDictionary *_datas; 14 | NSString *_filePath, 15 | *_tempPath; 16 | BOOL _saveKey; 17 | dispatch_queue_t _cacheQueue; 18 | } 19 | 20 | @property (assign) dispatch_queue_t cacheQueue; 21 | 22 | - (id)initWithPath:(NSString*)path; 23 | 24 | - (void)setDirPath:(NSString *)path; 25 | 26 | - (void)doPerFile:(void (^)(id key, id obj, BOOL *stop))block; 27 | 28 | - (MTNetCacheElement*)fileForUrl:(NSString*)url; 29 | - (MTNetCacheElement*)fileForName:(NSString*)name; 30 | - (void)cleanDirectoryWithOut:(NSString*)fileName; 31 | 32 | - (void)addFile:(MTNetCacheElement *)file; 33 | - (void)deleteFileForUrl:(NSString*)url; 34 | - (void)save; 35 | - (void)deleteAll; 36 | - (void)deleteBeforeDate:(NSDate*)date; 37 | - (UInt64)size; 38 | 39 | @end 40 | -------------------------------------------------------------------------------- /GenS/Utils/CacheManager/MTMenoryCache.h: -------------------------------------------------------------------------------- 1 | // 2 | // MTMenoryCache.h 3 | // NetWorkTest 4 | // 5 | // Created by zrz on 12-3-2. 6 | // Copyright (c) 2012年 zrz. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "MTNetCacheElement.h" 11 | 12 | @interface MTMenoryCache : NSObject 13 | { 14 | NSMutableDictionary *_datas; 15 | NSMutableArray *_index; 16 | UInt64 _maxSize, 17 | _size; 18 | } 19 | 20 | //the max size in the memory ,default is 8000000(1MB). 21 | @property (nonatomic, assign) UInt64 maxSize; 22 | 23 | - (UInt64)size; 24 | 25 | - (MTNetCacheElement*)fileForUrl:(NSString*)url; 26 | 27 | - (void)addFile:(MTNetCacheElement*)file; 28 | 29 | - (void)deleteFileForUrl:(NSString*)url; 30 | 31 | - (void)deleteAll; 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /GenS/Utils/CoverView/GCoverView.h: -------------------------------------------------------------------------------- 1 | // 2 | // GCoverView.h 3 | // GenShelf 4 | // 5 | // Created by Gen on 16/3/11. 6 | // Copyright © 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GCoverView : UIView 12 | 13 | @property (nonatomic, readonly) UIView *contentView; 14 | @property (nonatomic, strong) UIView *contentSubview; 15 | 16 | - (id)initWithSubview:(UIView *)subview; 17 | - (id)initWithController:(UIViewController *)controller; 18 | - (void)showInView:(UIView *)view; 19 | - (void)miss; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /GenS/Utils/DownloadQueue/GSDownloadManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSDownloadManager.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/5/18. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "DIManager.h" 11 | 12 | @interface GSDownloadManager : NSObject 13 | 14 | + (instancetype)defaultManager; 15 | 16 | - (void)startItemWithUrl:(NSString *)url block:(void(^)(DIItem *))block; 17 | - (void)bringFirst:(NSString *)url; 18 | - (void)removeItems:(NSArray *)items; 19 | 20 | - (void *)collect:(void*)chapter book:(void *)book shop:(void *)shop; 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /GenS/Utils/GSAnalysis.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSAnalysis.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/7/1. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSAnalysis : NSObject 12 | 13 | + (void)run; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Utils/GSMemCache.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSMemCache.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/6/24. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface GSMemCache : NSObject 13 | 14 | - (void)loadImage:(NSString *)path block:(void(^)(NSString *path, UIImage *))block; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /GenS/Utils/GSUtils.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // GSUtils.hpp 3 | // GenS 4 | // 5 | // Created by mac on 2017/9/3. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #ifndef GSUtils_hpp 10 | #define GSUtils_hpp 11 | 12 | #include 13 | #import 14 | 15 | using namespace gcore; 16 | 17 | NSDictionary *dic(const Map &map); 18 | 19 | #endif /* GSUtils_hpp */ 20 | -------------------------------------------------------------------------------- /GenS/Utils/GSUtils.mm: -------------------------------------------------------------------------------- 1 | // 2 | // GSUtils.cpp 3 | // GenS 4 | // 5 | // Created by mac on 2017/9/3. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #include "GSUtils.hpp" 10 | 11 | NSDictionary *dic(const Map &map) { 12 | NSMutableDictionary *ret = [NSMutableDictionary dictionary]; 13 | for (auto it = map->begin(), _e = map->end(); it != _e; ++it) { 14 | [ret setObject:[NSString stringWithUTF8String:it->second] 15 | forKey:[NSString stringWithUTF8String:it->first.c_str()]]; 16 | } 17 | return ret; 18 | } 19 | -------------------------------------------------------------------------------- /GenS/Utils/MTAlertView/MTAlertView.h: -------------------------------------------------------------------------------- 1 | // 2 | // MTAlertView.h 3 | // SOP2p 4 | // 5 | // Created by zrz on 12-6-22. 6 | // Copyright (c) 2012年 Sctab. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class MTAlertView; 12 | 13 | @protocol MTAlertViewDelegate 14 | 15 | - (void)alertView:(MTAlertView *)alertView clickedButtonAtIndex:(NSInteger)index; 16 | 17 | @end 18 | 19 | @interface MTAlertView : UIView 20 | 21 | @property (nonatomic, weak) id delegate; 22 | @property (nonatomic, strong) id customerData; 23 | 24 | - (instancetype)initWithTitle:(NSString *)title 25 | content:(NSString *)content 26 | image:(nullable UIImage *)image 27 | buttons:(nullable NSString *)label, ...; 28 | - (void)show; 29 | - (void)showInView:(UIView *)view; 30 | - (void)miss; 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /GenS/Utils/MTAlertView/MTButton.h: -------------------------------------------------------------------------------- 1 | // 2 | // MTButton.h 3 | // AHARSDK 4 | // 5 | // Created by JT Ma on 22/12/2016. 6 | // Copyright © 2016 JT Ma. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface MTButton : UIButton 12 | 13 | @property (nonatomic, assign, readwrite) BOOL isLeft; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Utils/MTAlertView/MTButton.m: -------------------------------------------------------------------------------- 1 | // 2 | // MTButton.m 3 | // AHARSDK 4 | // 5 | // Created by JT Ma on 22/12/2016. 6 | // Copyright © 2016 JT Ma. All rights reserved. 7 | // 8 | 9 | #import "MTButton.h" 10 | 11 | @implementation MTButton 12 | 13 | @synthesize isLeft = _isLeft; 14 | 15 | - (void)drawRect:(CGRect)rect { 16 | if (!_isLeft) { 17 | [self drawLineFrom:CGPointMake(self.bounds.size.width, 0) to:CGPointMake(self.bounds.size.width, self.bounds.size.height)]; 18 | } 19 | [self drawLineFrom:CGPointMake(0, 0) to:CGPointMake(self.bounds.size.width, 0)]; 20 | } 21 | 22 | - (void)drawLineFrom:(CGPoint)startPoint to:(CGPoint)endPoint { 23 | CGContextRef context = UIGraphicsGetCurrentContext(); 24 | CGContextMoveToPoint(context, startPoint.x, startPoint.y); 25 | CGContextAddLineToPoint(context, endPoint.x, endPoint.y); 26 | CGFloat greyColor[4] = {0.6, 0.6, 0.6, 1}; 27 | CGContextSetStrokeColor(context, greyColor); 28 | CGContextStrokePath(context); 29 | } 30 | 31 | 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /GenS/Utils/MTPaddyButton/MTPaddyButton.h: -------------------------------------------------------------------------------- 1 | // 2 | // MTElasticityButton.h 3 | // MTElasticityButton 4 | // 5 | // Created by zrz on 13-1-9. 6 | // Copyright (c) 2013年 zrz. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface MTPaddyButton : UIButton 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /GenS/Utils/MTPaddyButton/MTPaddyLayer.h: -------------------------------------------------------------------------------- 1 | // 2 | // MTElasticityLayer.h 3 | // SOP2p 4 | // 5 | // Created by zrz on 12-5-31. 6 | // Copyright (c) 2012年 zrz. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef enum { 12 | MTElasiticityVertical = 0x01, 13 | MTElasiticityHorizontal = 0x02, 14 | MTElasiticityAll = 0x03 15 | } MTElasiticityKey; 16 | 17 | @interface MTPaddyLayer : CALayer { 18 | } 19 | 20 | @property (assign) float elasticityX, 21 | elasticityY; 22 | 23 | - (void)elastic:(MTElasiticityKey)key; 24 | - (void)elastic:(MTElasiticityKey)key rotation:(float)angle; 25 | - (void)rotation:(float)angle persent:(float)persent; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /GenS/Utils/Network/DIConfig.h: -------------------------------------------------------------------------------- 1 | // 2 | // DIConfig.h 3 | // AHARSDK 4 | // 5 | // 解析读取config文件 6 | // config: 7 | // <100m 8 | // during 7d 9 | // and 10 | // count 5 11 | // <300m 12 | // during 5d 13 | // or 14 | // count 3 15 | // 16 | // Created by gen on 2017/2/13. 17 | // Copyright © 2017年 JT Ma. All rights reserved. 18 | // 19 | 20 | #import 21 | 22 | typedef BOOL (*DIConfigOperator)(size_t, size_t); 23 | typedef BOOL (*DIConfigComOperator)(BOOL, BOOL); 24 | 25 | @interface DIConfig : NSObject { 26 | } 27 | 28 | @property (nonatomic, readonly) NSDate *date; 29 | @property (nonatomic, readonly) NSInteger count; 30 | @property (nonatomic, readonly) DIConfigOperator op; 31 | @property (nonatomic, readonly) DIConfigComOperator comOp; 32 | @property (nonatomic, readonly) size_t size; 33 | 34 | + (NSArray *)defaultConfigs; 35 | + (NSArray *)configsFromString:(NSString *)content; 36 | + (NSArray *)configsFromPath:(NSString *)path; 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /GenS/Utils/Network/PKMultipartInputStream/PKMultipartInputStream.h: -------------------------------------------------------------------------------- 1 | // PKMultipartInputStream.h 2 | // py.kerembellec@gmail.com 3 | 4 | #import 5 | 6 | @interface PKMultipartInputStream : NSInputStream 7 | - (void)addPartWithName:(NSString *)name string:(NSString *)string; 8 | - (void)addPartWithName:(NSString *)name data:(NSData *)data; 9 | - (void)addPartWithName:(NSString *)name data:(NSData *)data contentType:(NSString *)type; 10 | - (void)addPartWithName:(NSString *)name filename:(NSString*)filename data:(NSData *)data contentType:(NSString *)type; 11 | - (void)addPartWithName:(NSString *)name path:(NSString *)path; 12 | - (void)addPartWithName:(NSString *)name filename:(NSString *)filename path:(NSString *)path; 13 | - (void)addPartWithName:(NSString *)name filename:(NSString *)filename stream:(NSInputStream *)stream streamLength:(NSUInteger)streamLength; 14 | - (void)addPartWithHeaders:(NSDictionary *)headers string:(NSString *)string; 15 | - (void)addPartWithHeaders:(NSDictionary *)headers path:(NSString *)path; 16 | 17 | @property (nonatomic, readonly) NSString *boundary; 18 | @property (nonatomic, readonly) NSUInteger length; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Docs/ManualInstallation.md: -------------------------------------------------------------------------------- 1 | ### Installation by cloning the repository 2 | 3 | In order to gain access to all the files from the repository, you should clone it. 4 | ``` 5 | git clone --recursive https://github.com/rs/SDWebImage.git 6 | ``` 7 | 8 | ... TO BE CHECKED AND DESCRIBED IN DETAIL 9 | 10 | ### Add dependencies 11 | 12 | - In you application project app’s target settings, find the "Build Phases" section and open the "Link Binary With Libraries" block: 13 | - Click the "+" button again and select the "ImageIO.framework", this is needed by the progressive download feature: 14 | 15 | ### Add Linker Flag 16 | 17 | Open the "Build Settings" tab, in the "Linking" section, locate the "Other Linker Flags" setting and add the "-ObjC" flag: 18 | 19 | ![Other Linker Flags](http://dl.dropbox.com/u/123346/SDWebImage/10_other_linker_flags.jpg) 20 | 21 | Alternatively, if this causes compilation problems with frameworks that extend optional libraries, such as Parse, RestKit or opencv2, instead of the -ObjC flag use: 22 | ``` 23 | -force_load SDWebImage.framework/Versions/Current/SDWebImage 24 | ``` 25 | 26 | If you're using Cocoa Pods and have any frameworks that extend optional libraries, such as Parsen RestKit or opencv2, instead of the -ObjC flag use: 27 | ``` 28 | -force_load $(TARGET_BUILD_DIR)/libPods.a 29 | ``` 30 | and this: 31 | ``` 32 | $(inherited) 33 | ``` -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Docs/SDWebImageClassDiagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Docs/SDWebImageClassDiagram.png -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Docs/SDWebImageSequenceDiagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Docs/SDWebImageSequenceDiagram.png -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/CustomPathImages/4ad9ae8eabfec60b40bf48f0bfc2d120: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Examples/CustomPathImages/4ad9ae8eabfec60b40bf48f0bfc2d120 -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Examples/Default-568h@2x.png -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Demo.xcodeproj/xcuserdata/mac.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | SDWebImage OSX Demo.xcscheme_^#shared#^_ 8 | 9 | orderHint 10 | 8 11 | 12 | SDWebImage TV Demo.xcscheme_^#shared#^_ 13 | 14 | orderHint 15 | 9 16 | 17 | SDWebImage Watch Demo.xcscheme_^#shared#^_ 18 | 19 | orderHint 20 | 11 21 | 22 | 23 | SuppressBuildableAutocreation 24 | 25 | 4314D1A51D0E1181004B36C9 26 | 27 | primary 28 | 29 | 30 | 43A629CE1D0DFD000089D7DD 31 | 32 | primary 33 | 34 | 35 | 43A629ED1D0E07600089D7DD 36 | 37 | primary 38 | 39 | 40 | 53761294155AB74D005750A4 41 | 42 | primary 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Demo/AppDelegate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @property (strong, nonatomic) UINavigationController *navigationController; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Demo/DetailViewController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | 11 | @interface DetailViewController : UIViewController 12 | 13 | @property (strong, nonatomic) NSURL *imageURL; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Demo/MasterViewController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | 11 | @class DetailViewController; 12 | 13 | @interface MasterViewController : UITableViewController 14 | 15 | @property (strong, nonatomic) DetailViewController *detailViewController; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Demo/SDWebImage Demo-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'SDWebImage Demo' target in the 'SDWebImage Demo' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_4_0 8 | #warning "This project uses features only available in iOS SDK 4.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Demo/main.m: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | 11 | #import "AppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Demo/placeholder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Examples/SDWebImage Demo/placeholder.png -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Demo/placeholder@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Examples/SDWebImage Demo/placeholder@2x.png -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage OSX Demo/AppDelegate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | 11 | @interface AppDelegate : NSObject 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage OSX Demo/AppDelegate.m: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import "AppDelegate.h" 10 | 11 | @interface AppDelegate () 12 | 13 | @end 14 | 15 | @implementation AppDelegate 16 | 17 | - (void)applicationDidFinishLaunching:(NSNotification *)aNotification { 18 | // Insert code here to initialize your application 19 | } 20 | 21 | - (void)applicationWillTerminate:(NSNotification *)aNotification { 22 | // Insert code here to tear down your application 23 | } 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage OSX Demo/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "mac", 5 | "size" : "16x16", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "mac", 10 | "size" : "16x16", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "mac", 15 | "size" : "32x32", 16 | "scale" : "1x" 17 | }, 18 | { 19 | "idiom" : "mac", 20 | "size" : "32x32", 21 | "scale" : "2x" 22 | }, 23 | { 24 | "idiom" : "mac", 25 | "size" : "128x128", 26 | "scale" : "1x" 27 | }, 28 | { 29 | "idiom" : "mac", 30 | "size" : "128x128", 31 | "scale" : "2x" 32 | }, 33 | { 34 | "idiom" : "mac", 35 | "size" : "256x256", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "mac", 40 | "size" : "256x256", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "mac", 45 | "size" : "512x512", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "mac", 50 | "size" : "512x512", 51 | "scale" : "2x" 52 | } 53 | ], 54 | "info" : { 55 | "version" : 1, 56 | "author" : "xcode" 57 | } 58 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage OSX Demo/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | NSAppTransportSecurity 6 | 7 | NSAllowsArbitraryLoads 8 | 9 | 10 | CFBundleDevelopmentRegion 11 | en 12 | CFBundleExecutable 13 | $(EXECUTABLE_NAME) 14 | CFBundleIconFile 15 | 16 | CFBundleIdentifier 17 | $(PRODUCT_BUNDLE_IDENTIFIER) 18 | CFBundleInfoDictionaryVersion 19 | 6.0 20 | CFBundleName 21 | $(PRODUCT_NAME) 22 | CFBundlePackageType 23 | APPL 24 | CFBundleShortVersionString 25 | 1.0 26 | CFBundleSignature 27 | ???? 28 | CFBundleVersion 29 | 1 30 | LSMinimumSystemVersion 31 | $(MACOSX_DEPLOYMENT_TARGET) 32 | NSHumanReadableCopyright 33 | Copyright © 2017 Dailymotion. All rights reserved. 34 | NSMainStoryboardFile 35 | Main 36 | NSPrincipalClass 37 | NSApplication 38 | 39 | 40 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage OSX Demo/ViewController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | 11 | @interface ViewController : NSViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage OSX Demo/main.m: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | 11 | int main(int argc, const char * argv[]) { 12 | return NSApplicationMain(argc, argv); 13 | } 14 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/AppDelegate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | 16 | @end 17 | 18 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Back.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Back.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "layers" : [ 3 | { 4 | "filename" : "Front.imagestacklayer" 5 | }, 6 | { 7 | "filename" : "Middle.imagestacklayer" 8 | }, 9 | { 10 | "filename" : "Back.imagestacklayer" 11 | } 12 | ], 13 | "info" : { 14 | "version" : 1, 15 | "author" : "xcode" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Front.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Front.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Large.imagestack/Middle.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Back.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Back.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "layers" : [ 3 | { 4 | "filename" : "Front.imagestacklayer" 5 | }, 6 | { 7 | "filename" : "Middle.imagestacklayer" 8 | }, 9 | { 10 | "filename" : "Back.imagestacklayer" 11 | } 12 | ], 13 | "info" : { 14 | "version" : 1, 15 | "author" : "xcode" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Front.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Front.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/App Icon - Small.imagestack/Middle.imagestacklayer/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "assets" : [ 3 | { 4 | "size" : "1280x768", 5 | "idiom" : "tv", 6 | "filename" : "App Icon - Large.imagestack", 7 | "role" : "primary-app-icon" 8 | }, 9 | { 10 | "size" : "400x240", 11 | "idiom" : "tv", 12 | "filename" : "App Icon - Small.imagestack", 13 | "role" : "primary-app-icon" 14 | }, 15 | { 16 | "size" : "1920x720", 17 | "idiom" : "tv", 18 | "filename" : "Top Shelf Image.imageset", 19 | "role" : "top-shelf-image" 20 | } 21 | ], 22 | "info" : { 23 | "version" : 1, 24 | "author" : "xcode" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/App Icon & Top Shelf Image.brandassets/Top Shelf Image.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "tv", 5 | "scale" : "1x" 6 | } 7 | ], 8 | "info" : { 9 | "version" : 1, 10 | "author" : "xcode" 11 | } 12 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Assets.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "landscape", 5 | "idiom" : "tv", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "9.0", 8 | "scale" : "1x" 9 | } 10 | ], 11 | "info" : { 12 | "version" : 1, 13 | "author" : "xcode" 14 | } 15 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | NSAppTransportSecurity 6 | 7 | NSAllowsArbitraryLoads 8 | 9 | 10 | CFBundleDevelopmentRegion 11 | en 12 | CFBundleExecutable 13 | $(EXECUTABLE_NAME) 14 | CFBundleIdentifier 15 | $(PRODUCT_BUNDLE_IDENTIFIER) 16 | CFBundleInfoDictionaryVersion 17 | 6.0 18 | CFBundleName 19 | $(PRODUCT_NAME) 20 | CFBundlePackageType 21 | APPL 22 | CFBundleShortVersionString 23 | 1.0 24 | CFBundleSignature 25 | ???? 26 | CFBundleVersion 27 | 1 28 | LSRequiresIPhoneOS 29 | 30 | UIMainStoryboardFile 31 | Main 32 | UIRequiredDeviceCapabilities 33 | 34 | arm64 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/ViewController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | 11 | @interface ViewController : UIViewController 12 | 13 | @end 14 | 15 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage TV Demo/main.m: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Watch Demo Extension/Assets.xcassets/README__ignoredByTemplate__: -------------------------------------------------------------------------------- 1 | Did you know that git does not support storing empty directories? 2 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Watch Demo Extension/ExtensionDelegate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | 11 | @interface ExtensionDelegate : NSObject 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Watch Demo Extension/ExtensionDelegate.m: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import "ExtensionDelegate.h" 10 | 11 | @implementation ExtensionDelegate 12 | 13 | - (void)applicationDidFinishLaunching { 14 | // Perform any final initialization of your application. 15 | } 16 | 17 | - (void)applicationDidBecomeActive { 18 | // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. 19 | } 20 | 21 | - (void)applicationWillResignActive { 22 | // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. 23 | // Use this method to pause ongoing tasks, disable timers, etc. 24 | } 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Watch Demo Extension/InterfaceController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | #import 11 | 12 | @interface InterfaceController : WKInterfaceController 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Watch Demo Extension/NotificationController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | #import 11 | 12 | @interface NotificationController : WKUserNotificationInterfaceController 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Watch Demo Extension/PushNotificationPayload.apns: -------------------------------------------------------------------------------- 1 | { 2 | "aps": { 3 | "alert": { 4 | "body": "Test message", 5 | "title": "Optional title" 6 | }, 7 | "category": "myCategory" 8 | }, 9 | 10 | "WatchKit Simulator Actions": [ 11 | { 12 | "title": "First Button", 13 | "identifier": "firstButtonAction" 14 | } 15 | ], 16 | 17 | "customKey": "Use this file to define a testing payload for your notifications. The aps dictionary specifies the category, alert text and title. The WatchKit Simulator Actions array can provide info for one or more action buttons in addition to the standard Dismiss button. Any other top level keys are custom payload. If you have multiple such JSON files in your project, you'll be able to select them when choosing to debug the notification interface of your Watch App." 18 | } 19 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Watch Demo/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "size" : "24x24", 5 | "idiom" : "watch", 6 | "scale" : "2x", 7 | "role" : "notificationCenter", 8 | "subtype" : "38mm" 9 | }, 10 | { 11 | "size" : "27.5x27.5", 12 | "idiom" : "watch", 13 | "scale" : "2x", 14 | "role" : "notificationCenter", 15 | "subtype" : "42mm" 16 | }, 17 | { 18 | "size" : "29x29", 19 | "idiom" : "watch", 20 | "role" : "companionSettings", 21 | "scale" : "2x" 22 | }, 23 | { 24 | "size" : "29x29", 25 | "idiom" : "watch", 26 | "role" : "companionSettings", 27 | "scale" : "3x" 28 | }, 29 | { 30 | "size" : "40x40", 31 | "idiom" : "watch", 32 | "scale" : "2x", 33 | "role" : "appLauncher", 34 | "subtype" : "38mm" 35 | }, 36 | { 37 | "size" : "86x86", 38 | "idiom" : "watch", 39 | "scale" : "2x", 40 | "role" : "quickLook", 41 | "subtype" : "38mm" 42 | }, 43 | { 44 | "size" : "98x98", 45 | "idiom" : "watch", 46 | "scale" : "2x", 47 | "role" : "quickLook", 48 | "subtype" : "42mm" 49 | } 50 | ], 51 | "info" : { 52 | "version" : 1, 53 | "author" : "xcode" 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Examples/SDWebImage Watch Demo/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | SDWebImage iOS Demo 9 | CFBundleExecutable 10 | $(EXECUTABLE_NAME) 11 | CFBundleIdentifier 12 | $(PRODUCT_BUNDLE_IDENTIFIER) 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | $(PRODUCT_NAME) 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1 25 | UISupportedInterfaceOrientations 26 | 27 | UIInterfaceOrientationPortrait 28 | UIInterfaceOrientationPortraitUpsideDown 29 | 30 | WKCompanionAppBundleIdentifier 31 | com.dailymotion.SDWebImage-iOS-Demo 32 | WKWatchKitApp 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2009-2017 Olivier Poitrey rs@dailymotion.com 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is furnished 8 | to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | 21 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 12 | 13 | 15 | 16 | 18 | 19 | 21 | 22 | 24 | 25 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/SDWebImage.xcworkspace/xcuserdata/mac.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage/NSData+ImageContentType.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * (c) Fabrice Aneche 5 | * 6 | * For the full copyright and license information, please view the LICENSE 7 | * file that was distributed with this source code. 8 | */ 9 | 10 | #import 11 | 12 | typedef NS_ENUM(NSInteger, SDImageFormat) { 13 | SDImageFormatUndefined = -1, 14 | SDImageFormatJPEG = 0, 15 | SDImageFormatPNG, 16 | SDImageFormatGIF, 17 | SDImageFormatTIFF, 18 | SDImageFormatWebP 19 | }; 20 | 21 | @interface NSData (ImageContentType) 22 | 23 | /** 24 | * Return image format 25 | * 26 | * @param data the input image data 27 | * 28 | * @return the image format as `SDImageFormat` (enum) 29 | */ 30 | + (SDImageFormat)sd_imageFormatForImageData:(nullable NSData *)data; 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage/NSImage+WebCache.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import "SDWebImageCompat.h" 10 | 11 | #if SD_MAC 12 | 13 | #import 14 | 15 | @interface NSImage (WebCache) 16 | 17 | - (CGImageRef)CGImage; 18 | - (NSArray *)images; 19 | - (BOOL)isGIF; 20 | 21 | @end 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage/NSImage+WebCache.m: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import "NSImage+WebCache.h" 10 | 11 | #if SD_MAC 12 | 13 | @implementation NSImage (WebCache) 14 | 15 | - (CGImageRef)CGImage { 16 | NSRect imageRect = NSMakeRect(0, 0, self.size.width, self.size.height); 17 | CGImageRef cgImage = [self CGImageForProposedRect:&imageRect context:NULL hints:nil]; 18 | return cgImage; 19 | } 20 | 21 | - (NSArray *)images { 22 | return nil; 23 | } 24 | 25 | - (BOOL)isGIF { 26 | return NO; 27 | } 28 | 29 | @end 30 | 31 | #endif 32 | 33 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage/SDImageCacheConfig.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | #import "SDWebImageCompat.h" 11 | 12 | @interface SDImageCacheConfig : NSObject 13 | 14 | /** 15 | * Decompressing images that are downloaded and cached can improve performance but can consume lot of memory. 16 | * Defaults to YES. Set this to NO if you are experiencing a crash due to excessive memory consumption. 17 | */ 18 | @property (assign, nonatomic) BOOL shouldDecompressImages; 19 | 20 | /** 21 | * disable iCloud backup [defaults to YES] 22 | */ 23 | @property (assign, nonatomic) BOOL shouldDisableiCloud; 24 | 25 | /** 26 | * use memory cache [defaults to YES] 27 | */ 28 | @property (assign, nonatomic) BOOL shouldCacheImagesInMemory; 29 | 30 | /** 31 | * The maximum length of time to keep an image in the cache, in seconds 32 | */ 33 | @property (assign, nonatomic) NSInteger maxCacheAge; 34 | 35 | /** 36 | * The maximum size of the cache, in bytes. 37 | */ 38 | @property (assign, nonatomic) NSUInteger maxCacheSize; 39 | 40 | @end 41 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage/SDImageCacheConfig.m: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import "SDImageCacheConfig.h" 10 | 11 | static const NSInteger kDefaultCacheMaxCacheAge = 60 * 60 * 24 * 7; // 1 week 12 | 13 | @implementation SDImageCacheConfig 14 | 15 | - (instancetype)init { 16 | if (self = [super init]) { 17 | _shouldDecompressImages = YES; 18 | _shouldDisableiCloud = YES; 19 | _shouldCacheImagesInMemory = YES; 20 | _maxCacheAge = kDefaultCacheMaxCacheAge; 21 | _maxCacheSize = 0; 22 | } 23 | return self; 24 | } 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage/SDWebImageDecoder.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * (c) james 5 | * 6 | * For the full copyright and license information, please view the LICENSE 7 | * file that was distributed with this source code. 8 | */ 9 | 10 | #import 11 | #import "SDWebImageCompat.h" 12 | 13 | @interface UIImage (ForceDecode) 14 | 15 | + (nullable UIImage *)decodedImageWithImage:(nullable UIImage *)image; 16 | 17 | + (nullable UIImage *)decodedAndScaledDownImageWithImage:(nullable UIImage *)image; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage/SDWebImageOperation.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | 11 | @protocol SDWebImageOperation 12 | 13 | - (void)cancel; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage/UIImage+GIF.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * (c) Laurin Brandner 5 | * 6 | * For the full copyright and license information, please view the LICENSE 7 | * file that was distributed with this source code. 8 | */ 9 | 10 | #import "SDWebImageCompat.h" 11 | 12 | @interface UIImage (GIF) 13 | 14 | /** 15 | * Compatibility method - creates an animated UIImage from an NSData, it will only contain the 1st frame image 16 | */ 17 | + (UIImage *)sd_animatedGIFWithData:(NSData *)data; 18 | 19 | /** 20 | * Checks if an UIImage instance is a GIF. Will use the `images` array 21 | */ 22 | - (BOOL)isGIF; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage/UIImage+MultiFormat.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import "SDWebImageCompat.h" 10 | #import "NSData+ImageContentType.h" 11 | 12 | @interface UIImage (MultiFormat) 13 | 14 | + (nullable UIImage *)sd_imageWithData:(nullable NSData *)data; 15 | - (nullable NSData *)sd_imageData; 16 | - (nullable NSData *)sd_imageDataAsFormat:(SDImageFormat)imageFormat; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage/UIImage+WebP.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #ifdef SD_WEBP 10 | 11 | #import "SDWebImageCompat.h" 12 | 13 | @interface UIImage (WebP) 14 | 15 | + (nullable UIImage *)sd_imageWithWebPData:(nullable NSData *)data; 16 | 17 | @end 18 | 19 | #endif 20 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage/UIView+WebCacheOperation.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import "SDWebImageCompat.h" 10 | 11 | #if SD_UIKIT || SD_MAC 12 | 13 | #import "SDWebImageManager.h" 14 | 15 | @interface UIView (WebCacheOperation) 16 | 17 | /** 18 | * Set the image load operation (storage in a UIView based dictionary) 19 | * 20 | * @param operation the operation 21 | * @param key key for storing the operation 22 | */ 23 | - (void)sd_setImageLoadOperation:(nullable id)operation forKey:(nullable NSString *)key; 24 | 25 | /** 26 | * Cancel all operations for the current UIView and key 27 | * 28 | * @param key key for identifying the operations 29 | */ 30 | - (void)sd_cancelImageLoadOperationWithKey:(nullable NSString *)key; 31 | 32 | /** 33 | * Just remove the operations corresponding to the current UIView and key without cancelling them 34 | * 35 | * @param key key for identifying the operations 36 | */ 37 | - (void)sd_removeImageLoadOperationWithKey:(nullable NSString *)key; 38 | 39 | @end 40 | 41 | #endif 42 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/SDWebImage_logo.png -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/SDWebImage_logo_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/SDWebImage_logo_small.png -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Tests/Podfile: -------------------------------------------------------------------------------- 1 | source 'https://github.com/CocoaPods/Specs.git' 2 | 3 | use_frameworks! 4 | 5 | xcodeproj 'SDWebImage Tests' 6 | workspace '../SDWebImage' 7 | 8 | target 'Tests' do 9 | platform :ios, '8.0' 10 | pod 'Expecta' 11 | pod 'SDWebImage/WebP', :path => '../' 12 | pod 'SDWebImage/MapKit', :path => '../' 13 | pod 'SDWebImage/GIF', :path => '../' 14 | 15 | end 16 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Tests/SDWebImage Tests.xcodeproj/xcuserdata/mac.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Tests.xcscheme_^#shared#^_ 8 | 9 | orderHint 10 | 14 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | DA248D52195472AA00390AB0 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Tests/Tests/MonochromeTestImage.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Tests/Tests/MonochromeTestImage.jpg -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Tests/Tests/TestImage.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Tests/Tests/TestImage.gif -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Tests/Tests/TestImage.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Tests/Tests/TestImage.jpg -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Tests/Tests/TestImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Tests/Tests/TestImage.png -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Tests/Tests/TestImageLarge.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Tests/Tests/TestImageLarge.jpg -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Tests/Tests/Tests-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Tests/Tests/Tests-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #ifdef __OBJC__ 8 | #import 9 | #import 10 | #endif 11 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Tests/Tests/UIImageMultiFormatTests.m: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #define EXP_SHORTHAND // required by Expecta 10 | 11 | 12 | #import 13 | #import 14 | 15 | #import 16 | 17 | 18 | @interface UIImageMultiFormatTests : XCTestCase 19 | 20 | @end 21 | 22 | 23 | @implementation UIImageMultiFormatTests 24 | 25 | - (void)testImageOrientationFromImageDataWithInvalidData { 26 | // sync download image 27 | SEL selector = @selector(sd_imageOrientationFromImageData:); 28 | 29 | UIImageOrientation orientation = [[UIImage class] performSelector:selector withObject:nil]; 30 | expect(orientation).to.equal(UIImageOrientationUp); 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Tests/Tests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/.gitignore: -------------------------------------------------------------------------------- 1 | # Global .gitignore 2 | # Files such as .DS_Store on OS X should be excluded system-wide: $ git config --global core.excludesfile "~/.gitignore_global_osx" 3 | 4 | # Xcode 5 | build/* 6 | *.pbxuser 7 | !default.pbxuser 8 | *.mode1v3 9 | !default.mode1v3 10 | *.mode2v3 11 | !default.mode2v3 12 | *.perspectivev3 13 | !default.perspectivev3 14 | xcuserdata 15 | profile 16 | *.moved-aside 17 | *.xcworkspacedata 18 | 19 | # CocoaPods 20 | # 21 | # We recommend against adding the Pods directory to your .gitignore. However 22 | # you should judge for yourself, the pros and cons are mentioned at: 23 | # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control? 24 | # 25 | # Pods/ 26 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImage/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | $(CURRENT_PROJECT_VERSION) 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // FLAnimatedImageDemo 4 | // 5 | // Created by Raphael Schaad on 4/1/14. 6 | // Copyright (c) 2014 Flipboard. All rights reserved. 7 | // 8 | 9 | 10 | #import 11 | 12 | 13 | @interface AppDelegate : UIResponder 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/AppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.m 3 | // FLAnimatedImageDemo 4 | // 5 | // Created by Raphael Schaad on 4/1/14. 6 | // Copyright (c) 2014 Flipboard. All rights reserved. 7 | // 8 | 9 | 10 | #import "AppDelegate.h" 11 | #import "RootViewController.h" 12 | 13 | 14 | @interface AppDelegate () 15 | 16 | 17 | @property (nonatomic, strong) RootViewController *viewController; 18 | 19 | @end 20 | 21 | 22 | @implementation AppDelegate 23 | 24 | @synthesize window = _window; 25 | 26 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 27 | { 28 | self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 29 | self.viewController = [[RootViewController alloc] init]; 30 | self.window.rootViewController = self.viewController; 31 | [self.window makeKeyAndVisible]; 32 | return YES; 33 | } 34 | 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/DebugView.h: -------------------------------------------------------------------------------- 1 | // 2 | // DebugView.h 3 | // FLAnimatedImageDemo 4 | // 5 | // Created by Raphael Schaad on 4/1/14. 6 | // Copyright (c) 2014 Flipboard. All rights reserved. 7 | // 8 | 9 | 10 | #import 11 | #import 12 | 13 | typedef NS_ENUM(NSUInteger, DebugViewStyle) { 14 | DebugViewStyleDefault, 15 | DebugViewStyleCondensed 16 | }; 17 | 18 | 19 | // Conforms to private FLAnimatedImageDebugDelegate and FLAnimatedImageViewDebugDelegate protocols, used in sample project. 20 | @interface DebugView : UIView 21 | 22 | @property (nonatomic, weak) FLAnimatedImage *image; 23 | @property (nonatomic, weak) FLAnimatedImageView *imageView; 24 | @property (nonatomic, assign) DebugViewStyle style; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/FLAnimatedImageDemo-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'AnimatedImageDemo' target in the 'AnimatedImageDemo' project 3 | // 4 | 5 | 6 | #import 7 | 8 | 9 | #ifndef __IPHONE_7_0 10 | #warning "This project uses features only available in iOS SDK 7.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | #import 15 | #import 16 | #endif 17 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/FrameCacheView.h: -------------------------------------------------------------------------------- 1 | // 2 | // FrameCacheView.h 3 | // FLAnimatedImageDemo 4 | // 5 | // Created by Raphael Schaad on 4/1/14. 6 | // Copyright (c) 2014 Flipboard. All rights reserved. 7 | // 8 | 9 | 10 | #import 11 | 12 | @class FLAnimatedImage; 13 | 14 | 15 | @interface FrameCacheView : UIView 16 | 17 | @property (nonatomic, strong) FLAnimatedImage *image; 18 | @property (nonatomic, strong) NSIndexSet *framesInCache; 19 | @property (nonatomic, assign) NSUInteger requestedFrameIndex; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/GraphView.h: -------------------------------------------------------------------------------- 1 | // 2 | // GraphView.h 3 | // FLAnimatedImageDemo 4 | // 5 | // Created by Raphael Schaad on 4/1/14. 6 | // Copyright (c) 2014 Flipboard. All rights reserved. 7 | // 8 | 9 | 10 | #import 11 | 12 | typedef NS_ENUM(NSUInteger, GraphViewStyle) { 13 | GraphViewStyleMemoryUsage, 14 | GraphViewStyleFrameDelay 15 | }; 16 | 17 | 18 | @interface GraphView : UIView 19 | 20 | @property (nonatomic, assign) GraphViewStyle style; // Default is `GraphViewStyleMemoryUsage` 21 | @property (nonatomic, assign) BOOL shouldShowDescription; // Default is YES 22 | @property (nonatomic, assign) NSUInteger numberOfDisplayedDataPoints; // Default is 50 23 | @property (nonatomic, assign) CGFloat maxDataPoint; // Default is the max of all data points added so far 24 | 25 | - (void)addDataPoint:(CGFloat)dataPoint; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "ipad", 5 | "size" : "29x29", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "ipad", 10 | "size" : "29x29", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "ipad", 15 | "size" : "40x40", 16 | "scale" : "1x" 17 | }, 18 | { 19 | "idiom" : "ipad", 20 | "size" : "40x40", 21 | "scale" : "2x" 22 | }, 23 | { 24 | "size" : "76x76", 25 | "idiom" : "ipad", 26 | "filename" : "Icon-76.png", 27 | "scale" : "1x" 28 | }, 29 | { 30 | "size" : "76x76", 31 | "idiom" : "ipad", 32 | "filename" : "Icon-76@2x.png", 33 | "scale" : "2x" 34 | }, 35 | { 36 | "size" : "83.5x83.5", 37 | "idiom" : "ipad", 38 | "filename" : "Icon-83.5@2x.png", 39 | "scale" : "2x" 40 | } 41 | ], 42 | "info" : { 43 | "version" : 1, 44 | "author" : "xcode" 45 | } 46 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/Images.xcassets/AppIcon.appiconset/Icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/Images.xcassets/AppIcon.appiconset/Icon-76.png -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/Images.xcassets/AppIcon.appiconset/Icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/Images.xcassets/AppIcon.appiconset/Icon-76@2x.png -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/Images.xcassets/AppIcon.appiconset/Icon-83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/Images.xcassets/AppIcon.appiconset/Icon-83.5@2x.png -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "landscape", 5 | "idiom" : "ipad", 6 | "minimum-system-version" : "7.0", 7 | "extent" : "full-screen", 8 | "scale" : "1x" 9 | }, 10 | { 11 | "orientation" : "landscape", 12 | "idiom" : "ipad", 13 | "minimum-system-version" : "7.0", 14 | "extent" : "full-screen", 15 | "scale" : "2x" 16 | }, 17 | { 18 | "orientation" : "portrait", 19 | "idiom" : "ipad", 20 | "minimum-system-version" : "7.0", 21 | "extent" : "full-screen", 22 | "scale" : "1x" 23 | }, 24 | { 25 | "orientation" : "portrait", 26 | "idiom" : "ipad", 27 | "minimum-system-version" : "7.0", 28 | "extent" : "full-screen", 29 | "scale" : "2x" 30 | } 31 | ], 32 | "info" : { 33 | "version" : 1, 34 | "author" : "xcode" 35 | } 36 | } -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/PlayheadView.h: -------------------------------------------------------------------------------- 1 | // 2 | // PlayheadView.h 3 | // FLAnimatedImageDemo 4 | // 5 | // Created by Raphael Schaad on 4/1/14. 6 | // Copyright (c) 2014 Flipboard. All rights reserved. 7 | // 8 | 9 | 10 | #import 11 | 12 | 13 | @interface PlayheadView : UIView 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/PlayheadView.m: -------------------------------------------------------------------------------- 1 | // 2 | // PlayheadView.m 3 | // FLAnimatedImageDemo 4 | // 5 | // Created by Raphael Schaad on 4/1/14. 6 | // Copyright (c) 2014 Flipboard. All rights reserved. 7 | // 8 | 9 | 10 | #import "PlayheadView.h" 11 | 12 | 13 | @implementation PlayheadView 14 | 15 | - (instancetype)initWithFrame:(CGRect)frame 16 | { 17 | self = [super initWithFrame:frame]; 18 | if (self) { 19 | self.opaque = NO; 20 | } 21 | return self; 22 | } 23 | 24 | 25 | - (void)drawRect:(CGRect)rect 26 | { 27 | UIBezierPath *path = [UIBezierPath bezierPath]; 28 | [path moveToPoint:rect.origin]; 29 | [path addLineToPoint:CGPointMake(CGRectGetMaxX(rect), rect.origin.y)]; 30 | [path addLineToPoint:CGPointMake(CGRectGetMidX(rect), CGRectGetMaxY(rect))]; 31 | [path closePath]; 32 | [[UIColor colorWithWhite:0.8 alpha:1.0] setFill]; 33 | [path fill]; 34 | } 35 | 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/RSPlayPauseButton.h: -------------------------------------------------------------------------------- 1 | // 2 | // RSPlayPauseButton.h 3 | // 4 | // Created by Raphael Schaad on 2014-03-22. 5 | // This is free and unencumbered software released into the public domain. 6 | // 7 | 8 | 9 | #import 10 | 11 | 12 | typedef NS_ENUM(NSUInteger, RSPlayPauseButtonAnimationStyle) { 13 | RSPlayPauseButtonAnimationStyleSplit, 14 | RSPlayPauseButtonAnimationStyleSplitAndRotate // Default 15 | }; 16 | 17 | 18 | // 19 | // Displays a ⃝ with either the ► (play) or ❚❚ (pause) icon and nicely morphs between the two states. 20 | // 21 | @interface RSPlayPauseButton : UIControl 22 | 23 | // State 24 | @property (nonatomic, assign, getter = isPaused) BOOL paused; // Default is `YES`; changing this way is not animated 25 | - (void)setPaused:(BOOL)paused animated:(BOOL)animated; 26 | 27 | // Style 28 | @property (nonatomic, strong) UIColor *color; // Default is 96% black 29 | @property (nonatomic, assign) RSPlayPauseButtonAnimationStyle animationStyle; // Default is `RSPlayPauseButtonAnimationStyleSplitAndRotate` 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/RootViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // RootViewController.h 3 | // FLAnimatedImageDemo 4 | // 5 | // Created by Raphael Schaad on 4/1/14. 6 | // Copyright (c) 2014 Flipboard. All rights reserved. 7 | // 8 | 9 | 10 | #import 11 | 12 | 13 | @interface RootViewController : UIViewController 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // FLAnimatedImageDemo 4 | // 5 | // Created by Raphael Schaad on 4/1/14. 6 | // Copyright (c) 2014 Flipboard. All rights reserved. 7 | // 8 | 9 | 10 | #import "AppDelegate.h" 11 | #import 12 | 13 | 14 | int main(int argc, char *argv[]) 15 | { 16 | @autoreleasepool { 17 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/test-gifs/rock.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/FLAnimatedImageDemo/test-gifs/rock.gif -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2014-2016 Flipboard 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/images/flanimatedimage-demo-player.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Vendors/FLAnimatedImage/images/flanimatedimage-demo-player.gif -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/Makefile.am: -------------------------------------------------------------------------------- 1 | ACLOCAL_AMFLAGS = -I m4 2 | SUBDIRS = src examples man 3 | EXTRA_DIST = COPYING autogen.sh 4 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/autogen.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh -e 2 | exec autoreconf -fi 3 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/doc/README: -------------------------------------------------------------------------------- 1 | 2 | Generate libwebp Container Spec Docs from Text Source 3 | ===================================================== 4 | 5 | HTML generation requires kramdown [1], easily installed as a 6 | rubygem [2]. Rubygems installation should satisfy dependencies 7 | automatically. 8 | 9 | [1]: http://kramdown.rubyforge.org/ 10 | [2]: http://rubygems.org/ 11 | 12 | HTML generation can then be done from the project root: 13 | 14 | $ kramdown doc/webp-container-spec.txt --template doc/template.html > \ 15 | doc/output/webp-container-spec.html 16 | 17 | kramdown can optionally syntax highlight code blocks, using CodeRay [3], 18 | a dependency of kramdown that rubygems will install automatically. The 19 | following will apply inline CSS styling; an external stylesheet is not 20 | needed. 21 | 22 | $ kramdown doc/webp-lossless-bitstream-spec.txt --template \ 23 | doc/template.html --coderay-css style --coderay-line-numbers ' ' \ 24 | --coderay-default-lang c > \ 25 | doc/output/webp-lossless-bitstream-spec.html 26 | 27 | Optimally, use kramdown 0.13.7 or newer if syntax highlighting desired. 28 | 29 | [3]: http://coderay.rubychan.de/ 30 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/doc/TODO: -------------------------------------------------------------------------------- 1 | , 20111004 2 | 3 | * Determine that normative RFC 2119 terms (MUST, SHOULD, MAY, etc.) are 4 | truly intended in all cases where capitalized. 5 | 6 | * Several passages could be made clearer. 7 | 8 | * Overall edit for scope. Portions are phrased as an introduction to 9 | the 0.1.3 RIFF container additions, rather than a holistic guide to 10 | WebP. 11 | 12 | * To wit, suggest s/[spec|specification]/guide/g . "Spec" can imply a 13 | standards track; in any case it's too formal for a work in progress. 14 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/examples/jpegdec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2012 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // JPEG decode. 11 | 12 | #ifndef WEBP_EXAMPLES_JPEGDEC_H_ 13 | #define WEBP_EXAMPLES_JPEGDEC_H_ 14 | 15 | #include 16 | #include "webp/types.h" 17 | 18 | #ifdef __cplusplus 19 | extern "C" { 20 | #endif 21 | 22 | struct Metadata; 23 | struct WebPPicture; 24 | 25 | // Reads a JPEG from 'data', returning the decoded output in 'pic'. 26 | // The output is RGB or YUV depending on pic->use_argb value. 27 | // Returns true on success. 28 | // 'keep_alpha' has no effect, but is kept for coherence with other signatures 29 | // for image readers. 30 | int ReadJPEG(const uint8_t* const data, size_t data_size, 31 | struct WebPPicture* const pic, int keep_alpha, 32 | struct Metadata* const metadata); 33 | 34 | #ifdef __cplusplus 35 | } // extern "C" 36 | #endif 37 | 38 | #endif // WEBP_EXAMPLES_JPEGDEC_H_ 39 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/examples/pngdec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2012 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // PNG decode. 11 | 12 | #ifndef WEBP_EXAMPLES_PNGDEC_H_ 13 | #define WEBP_EXAMPLES_PNGDEC_H_ 14 | 15 | #include "webp/types.h" 16 | 17 | #ifdef __cplusplus 18 | extern "C" { 19 | #endif 20 | 21 | struct Metadata; 22 | struct WebPPicture; 23 | 24 | // Reads a PNG from 'data', returning the decoded output in 'pic'. 25 | // Output is RGBA or YUVA, depending on pic->use_argb value. 26 | // If 'keep_alpha' is true and the PNG has an alpha channel, the output is RGBA 27 | // or YUVA. Otherwise, alpha channel is dropped and output is RGB or YUV. 28 | // Returns true on success. 29 | int ReadPNG(const uint8_t* const data, size_t data_size, 30 | struct WebPPicture* const pic, 31 | int keep_alpha, struct Metadata* const metadata); 32 | 33 | #ifdef __cplusplus 34 | } // extern "C" 35 | #endif 36 | 37 | #endif // WEBP_EXAMPLES_PNGDEC_H_ 38 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/examples/test.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Vendors/libwebp/examples/test.webp -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/examples/test_ref.ppm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Vendors/libwebp/examples/test_ref.ppm -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/examples/tiffdec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2012 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // TIFF decode. 11 | 12 | #ifndef WEBP_EXAMPLES_TIFFDEC_H_ 13 | #define WEBP_EXAMPLES_TIFFDEC_H_ 14 | 15 | #include "webp/types.h" 16 | 17 | #ifdef __cplusplus 18 | extern "C" { 19 | #endif 20 | 21 | struct Metadata; 22 | struct WebPPicture; 23 | 24 | // Reads a TIFF from 'data', returning the decoded output in 'pic'. 25 | // Output is RGBA or YUVA, depending on pic->use_argb value. 26 | // If 'keep_alpha' is true and the TIFF has an alpha channel, the output is RGBA 27 | // or YUVA. Otherwise, alpha channel is dropped and output is RGB or YUV. 28 | // Returns true on success. 29 | int ReadTIFF(const uint8_t* const data, size_t data_size, 30 | struct WebPPicture* const pic, int keep_alpha, 31 | struct Metadata* const metadata); 32 | 33 | #ifdef __cplusplus 34 | } // extern "C" 35 | #endif 36 | 37 | #endif // WEBP_EXAMPLES_TIFFDEC_H_ 38 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/examples/webpdec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2014 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // WebP decode. 11 | 12 | #ifndef WEBP_EXAMPLES_WEBPDEC_H_ 13 | #define WEBP_EXAMPLES_WEBPDEC_H_ 14 | 15 | #include "webp/types.h" 16 | 17 | #ifdef __cplusplus 18 | extern "C" { 19 | #endif 20 | 21 | struct Metadata; 22 | struct WebPPicture; 23 | 24 | // Reads a WebP from 'in_file', returning the decoded output in 'pic'. 25 | // Output is RGBA or YUVA, depending on pic->use_argb value. 26 | // If 'keep_alpha' is true and the WebP has an alpha channel, the output is RGBA 27 | // or YUVA. Otherwise, alpha channel is dropped and output is RGB or YUV. 28 | // Returns true on success. 29 | int ReadWebP(const uint8_t* const data, size_t data_size, 30 | struct WebPPicture* const pic, 31 | int keep_alpha, struct Metadata* const metadata); 32 | 33 | #ifdef __cplusplus 34 | } // extern "C" 35 | #endif 36 | 37 | #endif // WEBP_EXAMPLES_WEBPDEC_H_ 38 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/examples/wicdec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2013 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Windows Imaging Component (WIC) decode. 11 | 12 | #ifndef WEBP_EXAMPLES_WICDEC_H_ 13 | #define WEBP_EXAMPLES_WICDEC_H_ 14 | 15 | #ifdef __cplusplus 16 | extern "C" { 17 | #endif 18 | 19 | struct Metadata; 20 | struct WebPPicture; 21 | 22 | // Reads an image from 'filename', returning the decoded output in 'pic'. 23 | // If 'keep_alpha' is true and the image has an alpha channel, the output is 24 | // RGBA otherwise it will be RGB. pic->use_argb is always forced to true. 25 | // Returns true on success. 26 | int ReadPictureWithWIC(const char* const filename, 27 | struct WebPPicture* const pic, int keep_alpha, 28 | struct Metadata* const metadata); 29 | 30 | #ifdef __cplusplus 31 | } // extern "C" 32 | #endif 33 | 34 | #endif // WEBP_EXAMPLES_WICDEC_H_ 35 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/gradle.properties: -------------------------------------------------------------------------------- 1 | # Project-wide Gradle settings. 2 | 3 | # IDE (e.g. Android Studio) users: 4 | # Gradle settings configured through the IDE *will override* 5 | # any settings specified in this file. 6 | 7 | # For more details on how to configure your build environment visit 8 | # http://www.gradle.org/docs/current/userguide/build_environment.html 9 | 10 | # Versions for gradle 11 | BUILD_TOOLS_VERSION=23.0.3 12 | COMPILE_SDK_VERSION=23 13 | ANDROID_GRADLE_PLUGIN_VERSION=1.5.0 14 | GRADLE_DOWNLOAD_TASK_VERSION=2.1.0 15 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Vendors/libwebp/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Thu May 12 17:06:25 CEST 2016 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.13-bin.zip 7 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/man/Makefile.am: -------------------------------------------------------------------------------- 1 | man_MANS = cwebp.1 dwebp.1 2 | if WANT_MUX 3 | man_MANS += webpmux.1 4 | endif 5 | if BUILD_GIF2WEBP 6 | man_MANS += gif2webp.1 7 | endif 8 | if BUILD_VWEBP 9 | man_MANS += vwebp.1 10 | endif 11 | EXTRA_DIST = $(man_MANS) 12 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/dec/Makefile.am: -------------------------------------------------------------------------------- 1 | noinst_LTLIBRARIES = libwebpdecode.la 2 | 3 | libwebpdecode_la_SOURCES = 4 | libwebpdecode_la_SOURCES += alpha.c 5 | libwebpdecode_la_SOURCES += alphai.h 6 | libwebpdecode_la_SOURCES += buffer.c 7 | libwebpdecode_la_SOURCES += common.h 8 | libwebpdecode_la_SOURCES += decode_vp8.h 9 | libwebpdecode_la_SOURCES += frame.c 10 | libwebpdecode_la_SOURCES += idec.c 11 | libwebpdecode_la_SOURCES += io.c 12 | libwebpdecode_la_SOURCES += quant.c 13 | libwebpdecode_la_SOURCES += tree.c 14 | libwebpdecode_la_SOURCES += vp8.c 15 | libwebpdecode_la_SOURCES += vp8i.h 16 | libwebpdecode_la_SOURCES += vp8l.c 17 | libwebpdecode_la_SOURCES += vp8li.h 18 | libwebpdecode_la_SOURCES += webp.c 19 | libwebpdecode_la_SOURCES += webpi.h 20 | 21 | libwebpdecodeinclude_HEADERS = 22 | libwebpdecodeinclude_HEADERS += ../webp/decode.h 23 | libwebpdecodeinclude_HEADERS += ../webp/types.h 24 | noinst_HEADERS = 25 | noinst_HEADERS += ../webp/format_constants.h 26 | 27 | libwebpdecode_la_CPPFLAGS = $(AM_CPPFLAGS) $(USE_EXPERIMENTAL_CODE) 28 | libwebpdecodeincludedir = $(includedir)/webp 29 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/demux/Makefile.am: -------------------------------------------------------------------------------- 1 | lib_LTLIBRARIES = libwebpdemux.la 2 | 3 | libwebpdemux_la_SOURCES = 4 | libwebpdemux_la_SOURCES += anim_decode.c demux.c 5 | 6 | libwebpdemuxinclude_HEADERS = 7 | libwebpdemuxinclude_HEADERS += ../webp/demux.h 8 | libwebpdemuxinclude_HEADERS += ../webp/mux_types.h 9 | libwebpdemuxinclude_HEADERS += ../webp/types.h 10 | 11 | libwebpdemux_la_LIBADD = ../libwebp.la 12 | libwebpdemux_la_LDFLAGS = -no-undefined -version-info 2:0:0 13 | libwebpdemuxincludedir = $(includedir)/webp 14 | pkgconfig_DATA = libwebpdemux.pc 15 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/demux/libwebpdemux.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libwebpdemux 7 | Description: Library for parsing the WebP graphics format container 8 | Version: @PACKAGE_VERSION@ 9 | Requires: libwebp >= 0.2.0 10 | Cflags: -I${includedir} 11 | Libs: -L${libdir} -lwebpdemux 12 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/dsp/enc_avx2.c: -------------------------------------------------------------------------------- 1 | // Copyright 2014 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // AVX2 version of speed-critical encoding functions. 11 | 12 | #include "./dsp.h" 13 | 14 | #if defined(WEBP_USE_AVX2) 15 | 16 | #endif // WEBP_USE_AVX2 17 | 18 | //------------------------------------------------------------------------------ 19 | // Entry point 20 | 21 | WEBP_DSP_INIT_STUB(VP8EncDspInitAVX2) 22 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/enc/delta_palettization.h: -------------------------------------------------------------------------------- 1 | // Copyright 2015 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Author: Mislav Bradac (mislavm@google.com) 11 | // 12 | 13 | #ifndef WEBP_ENC_DELTA_PALETTIZATION_H_ 14 | #define WEBP_ENC_DELTA_PALETTIZATION_H_ 15 | 16 | #include "../webp/encode.h" 17 | #include "../enc/vp8li.h" 18 | 19 | // Replaces enc->argb_[] input by a palettizable approximation of it, 20 | // and generates optimal enc->palette_[]. 21 | // This function can revert enc->use_palette_ / enc->use_predict_ flag 22 | // if delta-palettization is not producing expected saving. 23 | WebPEncodingError WebPSearchOptimalDeltaPalette(VP8LEncoder* const enc); 24 | 25 | #endif // WEBP_ENC_DELTA_PALETTIZATION_H_ 26 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/extras/Makefile.am: -------------------------------------------------------------------------------- 1 | lib_LTLIBRARIES = libwebpextras.la 2 | 3 | libwebpextras_la_SOURCES = 4 | libwebpextras_la_SOURCES += extras.c 5 | 6 | libwebpextrasinclude_HEADERS = 7 | libwebpextrasinclude_HEADERS += ../webp/extras.h 8 | libwebpextrasinclude_HEADERS += ../webp/types.h 9 | 10 | libwebpextras_la_LIBADD = ../libwebp.la 11 | libwebpextras_la_LDFLAGS = -no-undefined -version-info 0:0:0 12 | libwebpextrasincludedir = $(includedir)/webp 13 | pkgconfig_DATA = libwebpextras.pc 14 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/extras/libwebpextras.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libwebpextras 7 | Description: Additional utility functions useful in processing WebP files 8 | Version: @PACKAGE_VERSION@ 9 | Requires: libwebp >= 0.5.0 10 | Cflags: -I${includedir} 11 | Libs: -L${libdir} -lwebpextras 12 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/libwebp.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libwebp 7 | Description: Library for the WebP graphics format 8 | Version: @PACKAGE_VERSION@ 9 | Cflags: -I${includedir} 10 | Libs: -L${libdir} -lwebp 11 | Libs.private: -lm @PTHREAD_CFLAGS@ @PTHREAD_LIBS@ 12 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/libwebpdecoder.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libwebpdecoder 7 | Description: Library for the WebP graphics format (decode only) 8 | Version: @PACKAGE_VERSION@ 9 | Cflags: -I${includedir} 10 | Libs: -L${libdir} -lwebpdecoder 11 | Libs.private: -lm @PTHREAD_CFLAGS@ @PTHREAD_LIBS@ 12 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/mux/Makefile.am: -------------------------------------------------------------------------------- 1 | lib_LTLIBRARIES = libwebpmux.la 2 | 3 | libwebpmux_la_SOURCES = 4 | libwebpmux_la_SOURCES += anim_encode.c 5 | libwebpmux_la_SOURCES += muxedit.c 6 | libwebpmux_la_SOURCES += muxi.h 7 | libwebpmux_la_SOURCES += muxinternal.c 8 | libwebpmux_la_SOURCES += muxread.c 9 | 10 | libwebpmuxinclude_HEADERS = 11 | libwebpmuxinclude_HEADERS += ../webp/mux.h 12 | libwebpmuxinclude_HEADERS += ../webp/mux_types.h 13 | libwebpmuxinclude_HEADERS += ../webp/types.h 14 | 15 | libwebpmux_la_LIBADD = ../libwebp.la 16 | libwebpmux_la_LDFLAGS = -no-undefined -version-info 2:1:0 17 | libwebpmuxincludedir = $(includedir)/webp 18 | pkgconfig_DATA = libwebpmux.pc 19 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/mux/libwebpmux.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libwebpmux 7 | Description: Library for manipulating the WebP graphics format container 8 | Version: @PACKAGE_VERSION@ 9 | Requires: libwebp >= 0.2.0 10 | Cflags: -I${includedir} 11 | Libs: -L${libdir} -lwebpmux 12 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/utils/filters.h: -------------------------------------------------------------------------------- 1 | // Copyright 2011 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Spatial prediction using various filters 11 | // 12 | // Author: Urvang (urvang@google.com) 13 | 14 | #ifndef WEBP_UTILS_FILTERS_H_ 15 | #define WEBP_UTILS_FILTERS_H_ 16 | 17 | #include "../webp/types.h" 18 | #include "../dsp/dsp.h" 19 | 20 | #ifdef __cplusplus 21 | extern "C" { 22 | #endif 23 | 24 | // Fast estimate of a potentially good filter. 25 | WEBP_FILTER_TYPE WebPEstimateBestFilter(const uint8_t* data, 26 | int width, int height, int stride); 27 | 28 | #ifdef __cplusplus 29 | } // extern "C" 30 | #endif 31 | 32 | #endif /* WEBP_UTILS_FILTERS_H_ */ 33 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/utils/quant_levels.h: -------------------------------------------------------------------------------- 1 | // Copyright 2011 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Alpha plane quantization utility 11 | // 12 | // Author: Vikas Arora (vikasa@google.com) 13 | 14 | #ifndef WEBP_UTILS_QUANT_LEVELS_H_ 15 | #define WEBP_UTILS_QUANT_LEVELS_H_ 16 | 17 | #include 18 | 19 | #include "../webp/types.h" 20 | 21 | #ifdef __cplusplus 22 | extern "C" { 23 | #endif 24 | 25 | // Replace the input 'data' of size 'width'x'height' with 'num-levels' 26 | // quantized values. If not NULL, 'sse' will contain the sum of squared error. 27 | // Valid range for 'num_levels' is [2, 256]. 28 | // Returns false in case of error (data is NULL, or parameters are invalid). 29 | int QuantizeLevels(uint8_t* const data, int width, int height, int num_levels, 30 | uint64_t* const sse); 31 | 32 | #ifdef __cplusplus 33 | } // extern "C" 34 | #endif 35 | 36 | #endif /* WEBP_UTILS_QUANT_LEVELS_H_ */ 37 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/src/utils/quant_levels_dec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2013 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Alpha plane de-quantization utility 11 | // 12 | // Author: Vikas Arora (vikasa@google.com) 13 | 14 | #ifndef WEBP_UTILS_QUANT_LEVELS_DEC_H_ 15 | #define WEBP_UTILS_QUANT_LEVELS_DEC_H_ 16 | 17 | #include "../webp/types.h" 18 | 19 | #ifdef __cplusplus 20 | extern "C" { 21 | #endif 22 | 23 | // Apply post-processing to input 'data' of size 'width'x'height' assuming that 24 | // the source was quantized to a reduced number of levels. 'stride' is in bytes. 25 | // Strength is in [0..100] and controls the amount of dithering applied. 26 | // Returns false in case of error (data is NULL, invalid parameters, 27 | // malloc failure, ...). 28 | int WebPDequantizeLevels(uint8_t* const data, int width, int height, int stride, 29 | int strength); 30 | 31 | #ifdef __cplusplus 32 | } // extern "C" 33 | #endif 34 | 35 | #endif /* WEBP_UTILS_QUANT_LEVELS_DEC_H_ */ 36 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/swig/libwebp.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SDWebImage/Vendors/libwebp/swig/libwebp.jar -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/Vendors/libwebp/swig/setup.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/python 2 | 3 | """distutils script for libwebp python module.""" 4 | 5 | from distutils.core import setup 6 | from distutils.extension import Extension 7 | import os 8 | import shutil 9 | import tempfile 10 | 11 | tmpdir = tempfile.mkdtemp() 12 | package = "com.google.webp" 13 | package_path = os.path.join(tmpdir, *package.split(".")) 14 | os.makedirs(package_path) 15 | 16 | # Create __init_.py files along the package path. 17 | initpy_path = tmpdir 18 | for d in package.split("."): 19 | initpy_path = os.path.join(initpy_path, d) 20 | open(os.path.join(initpy_path, "__init__.py"), "w").close() 21 | 22 | shutil.copy2("libwebp.py", package_path) 23 | setup(name="libwebp", 24 | version="0.0", 25 | description="libwebp python wrapper", 26 | long_description="Provides access to 'simple' libwebp decode interface", 27 | license="BSD", 28 | url="http://developers.google.com/speed/webp", 29 | ext_package=package, 30 | ext_modules=[Extension("_libwebp", 31 | ["libwebp_python_wrap.c"], 32 | libraries=["webp"], 33 | ), 34 | ], 35 | package_dir={"": tmpdir}, 36 | packages=["com", "com.google", "com.google.webp"], 37 | py_modules=[package + ".libwebp"], 38 | ) 39 | 40 | shutil.rmtree(tmpdir) 41 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/WebImage/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 4.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 4.0.0 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/dec/Makefile.am: -------------------------------------------------------------------------------- 1 | noinst_LTLIBRARIES = libwebpdecode.la 2 | 3 | libwebpdecode_la_SOURCES = 4 | libwebpdecode_la_SOURCES += alpha.c 5 | libwebpdecode_la_SOURCES += alphai.h 6 | libwebpdecode_la_SOURCES += buffer.c 7 | libwebpdecode_la_SOURCES += common.h 8 | libwebpdecode_la_SOURCES += decode_vp8.h 9 | libwebpdecode_la_SOURCES += frame.c 10 | libwebpdecode_la_SOURCES += idec.c 11 | libwebpdecode_la_SOURCES += io.c 12 | libwebpdecode_la_SOURCES += quant.c 13 | libwebpdecode_la_SOURCES += tree.c 14 | libwebpdecode_la_SOURCES += vp8.c 15 | libwebpdecode_la_SOURCES += vp8i.h 16 | libwebpdecode_la_SOURCES += vp8l.c 17 | libwebpdecode_la_SOURCES += vp8li.h 18 | libwebpdecode_la_SOURCES += webp.c 19 | libwebpdecode_la_SOURCES += webpi.h 20 | 21 | libwebpdecodeinclude_HEADERS = 22 | libwebpdecodeinclude_HEADERS += ../webp/decode.h 23 | libwebpdecodeinclude_HEADERS += ../webp/types.h 24 | noinst_HEADERS = 25 | noinst_HEADERS += ../webp/format_constants.h 26 | 27 | libwebpdecode_la_CPPFLAGS = $(AM_CPPFLAGS) $(USE_EXPERIMENTAL_CODE) 28 | libwebpdecodeincludedir = $(includedir)/webp 29 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/demux/Makefile.am: -------------------------------------------------------------------------------- 1 | lib_LTLIBRARIES = libwebpdemux.la 2 | 3 | libwebpdemux_la_SOURCES = 4 | libwebpdemux_la_SOURCES += anim_decode.c demux.c 5 | 6 | libwebpdemuxinclude_HEADERS = 7 | libwebpdemuxinclude_HEADERS += ../webp/demux.h 8 | libwebpdemuxinclude_HEADERS += ../webp/mux_types.h 9 | libwebpdemuxinclude_HEADERS += ../webp/types.h 10 | 11 | libwebpdemux_la_LIBADD = ../libwebp.la 12 | libwebpdemux_la_LDFLAGS = -no-undefined -version-info 2:0:0 13 | libwebpdemuxincludedir = $(includedir)/webp 14 | pkgconfig_DATA = libwebpdemux.pc 15 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/demux/libwebpdemux.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: libwebpdemux 7 | Description: Library for parsing the WebP graphics format container 8 | Version: @PACKAGE_VERSION@ 9 | Requires: libwebp >= 0.2.0 10 | Cflags: -I${includedir} 11 | Libs: -L${libdir} -lwebpdemux 12 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/dsp/enc_avx2.c: -------------------------------------------------------------------------------- 1 | // Copyright 2014 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // AVX2 version of speed-critical encoding functions. 11 | 12 | #include "./dsp.h" 13 | 14 | #if defined(WEBP_USE_AVX2) 15 | 16 | #endif // WEBP_USE_AVX2 17 | 18 | //------------------------------------------------------------------------------ 19 | // Entry point 20 | 21 | WEBP_DSP_INIT_STUB(VP8EncDspInitAVX2) 22 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/utils/filters.h: -------------------------------------------------------------------------------- 1 | // Copyright 2011 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Spatial prediction using various filters 11 | // 12 | // Author: Urvang (urvang@google.com) 13 | 14 | #ifndef WEBP_UTILS_FILTERS_H_ 15 | #define WEBP_UTILS_FILTERS_H_ 16 | 17 | #include "../webp/types.h" 18 | #include "../dsp/dsp.h" 19 | 20 | #ifdef __cplusplus 21 | extern "C" { 22 | #endif 23 | 24 | // Fast estimate of a potentially good filter. 25 | WEBP_FILTER_TYPE WebPEstimateBestFilter(const uint8_t* data, 26 | int width, int height, int stride); 27 | 28 | #ifdef __cplusplus 29 | } // extern "C" 30 | #endif 31 | 32 | #endif /* WEBP_UTILS_FILTERS_H_ */ 33 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/utils/quant_levels.h: -------------------------------------------------------------------------------- 1 | // Copyright 2011 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Alpha plane quantization utility 11 | // 12 | // Author: Vikas Arora (vikasa@google.com) 13 | 14 | #ifndef WEBP_UTILS_QUANT_LEVELS_H_ 15 | #define WEBP_UTILS_QUANT_LEVELS_H_ 16 | 17 | #include 18 | 19 | #include "../webp/types.h" 20 | 21 | #ifdef __cplusplus 22 | extern "C" { 23 | #endif 24 | 25 | // Replace the input 'data' of size 'width'x'height' with 'num-levels' 26 | // quantized values. If not NULL, 'sse' will contain the sum of squared error. 27 | // Valid range for 'num_levels' is [2, 256]. 28 | // Returns false in case of error (data is NULL, or parameters are invalid). 29 | int QuantizeLevels(uint8_t* const data, int width, int height, int num_levels, 30 | uint64_t* const sse); 31 | 32 | #ifdef __cplusplus 33 | } // extern "C" 34 | #endif 35 | 36 | #endif /* WEBP_UTILS_QUANT_LEVELS_H_ */ 37 | -------------------------------------------------------------------------------- /GenS/Utils/SDWebImage/utils/quant_levels_dec.h: -------------------------------------------------------------------------------- 1 | // Copyright 2013 Google Inc. All Rights Reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style license 4 | // that can be found in the COPYING file in the root of the source 5 | // tree. An additional intellectual property rights grant can be found 6 | // in the file PATENTS. All contributing project authors may 7 | // be found in the AUTHORS file in the root of the source tree. 8 | // ----------------------------------------------------------------------------- 9 | // 10 | // Alpha plane de-quantization utility 11 | // 12 | // Author: Vikas Arora (vikasa@google.com) 13 | 14 | #ifndef WEBP_UTILS_QUANT_LEVELS_DEC_H_ 15 | #define WEBP_UTILS_QUANT_LEVELS_DEC_H_ 16 | 17 | #include "../webp/types.h" 18 | 19 | #ifdef __cplusplus 20 | extern "C" { 21 | #endif 22 | 23 | // Apply post-processing to input 'data' of size 'width'x'height' assuming that 24 | // the source was quantized to a reduced number of levels. 'stride' is in bytes. 25 | // Strength is in [0..100] and controls the amount of dithering applied. 26 | // Returns false in case of error (data is NULL, invalid parameters, 27 | // malloc failure, ...). 28 | int WebPDequantizeLevels(uint8_t* const data, int width, int height, int stride, 29 | int strength); 30 | 31 | #ifdef __cplusplus 32 | } // extern "C" 33 | #endif 34 | 35 | #endif /* WEBP_UTILS_QUANT_LEVELS_DEC_H_ */ 36 | -------------------------------------------------------------------------------- /GenS/Utils/SideMenu/GShadowView.h: -------------------------------------------------------------------------------- 1 | // 2 | // GShadowView.h 3 | // GenShelf 4 | // 5 | // Created by Gen on 16/2/20. 6 | // Copyright © 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef enum : NSUInteger { 12 | GShadowViewLR, 13 | GShadowViewRL, 14 | GShadowViewTB, 15 | GShadowViewBT 16 | } GShadowViewStatus; 17 | 18 | @interface GShadowView : UIView 19 | 20 | @property (nonatomic, strong) NSArray *colors; 21 | @property (nonatomic, assign) GShadowViewStatus status; 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /GenS/Utils/SideMenu/GSideCoverView.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSideCoverView.h 3 | // GenShelf 4 | // 5 | // Created by Gen on 16/2/19. 6 | // Copyright © 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import 10 | typedef void(^GSideCoverViewBlock)(CGPoint); 11 | @interface GSideCoverView : UIView 12 | 13 | @property (nonatomic, copy) GSideCoverViewBlock moveBlock; 14 | @property (nonatomic, copy) GSideCoverViewBlock endBlock; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /GenS/Utils/SlimeRefresh/SRDefine.h: -------------------------------------------------------------------------------- 1 | // 2 | // SRDefine.h 3 | // SlimeRefresh 4 | // 5 | // Created by zrz on 12-6-15. 6 | // Copyright (c) 2012年 zrz. All rights reserved. 7 | // 8 | 9 | #ifndef SlimeRefresh_SRDefine_h 10 | #define SlimeRefresh_SRDefine_h 11 | 12 | #define kStartTo 0.7f 13 | #define kEndTo 0.15f 14 | 15 | #define kRefreshImageWidth 17.0f 16 | #define kAnimationInterval (1.0f/50.0f) 17 | 18 | #endif 19 | -------------------------------------------------------------------------------- /GenS/Utils/SlimeRefresh/sr_refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SlimeRefresh/sr_refresh.png -------------------------------------------------------------------------------- /GenS/Utils/SlimeRefresh/sr_refresh@2X.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/SlimeRefresh/sr_refresh@2X.png -------------------------------------------------------------------------------- /GenS/Utils/Tween/GCallback.h: -------------------------------------------------------------------------------- 1 | // 2 | // GCallback.h 3 | // GTween 4 | // 5 | // Created by zrz on 14-7-27. 6 | // Copyright (c) 2014年 zrz. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef void(^GCallbackBlock)(); 12 | 13 | @interface GCallback : NSObject 14 | 15 | @property (nonatomic, readonly) NSArray *targets; 16 | - (void)addTarget:(id)target action:(SEL)action with:(id)userData; 17 | - (void)addBlock:(GCallbackBlock)block; 18 | - (void)invoke; 19 | - (void)clean; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /GenS/Utils/Tween/GValue.h: -------------------------------------------------------------------------------- 1 | // 2 | // GValue.h 3 | // GTween 4 | // 5 | // Created by zrz on 14-7-29. 6 | // Copyright (c) 2014年 zrz. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface GValue : NSObject 13 | 14 | @property (nonatomic, readonly) BOOL isDynamic; 15 | @property (nonatomic, readonly) id target; 16 | @property (nonatomic, readonly) NSString *property; 17 | 18 | + (id)valueWithTarget:(id)target property:(NSString *)property dynamic:(BOOL)dynamic; 19 | + (id)valueWithTarget:(id)target property:(NSString *)property; 20 | 21 | - (id)initWithTarget:(id)target property:(NSString *)property dynamic:(BOOL)dynamic; 22 | - (id)initWithTarget:(id)target property:(NSString *)property; 23 | 24 | - (float)floatValue; 25 | - (CGRect)CGRectValue; 26 | - (CGSize)CGSizeValue; 27 | - (CGPoint)CGPointValue; 28 | - (CATransform3D)CATransform3DValue; 29 | 30 | - (id)data; 31 | 32 | - (void)reset; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /GenS/Utils/gumbo/attribute.h: -------------------------------------------------------------------------------- 1 | // Copyright 2010 Google Inc. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | // 15 | // Author: jdtang@google.com (Jonathan Tang) 16 | 17 | #ifndef GUMBO_ATTRIBUTE_H_ 18 | #define GUMBO_ATTRIBUTE_H_ 19 | 20 | #include "gumbo.h" 21 | 22 | #ifdef __cplusplus 23 | extern "C" { 24 | #endif 25 | 26 | struct GumboInternalParser; 27 | 28 | // Release the memory used for an GumboAttribute, including the attribute 29 | // itself. 30 | void gumbo_destroy_attribute( 31 | struct GumboInternalParser* parser, GumboAttribute* attribute); 32 | 33 | #ifdef __cplusplus 34 | } 35 | #endif 36 | 37 | #endif // GUMBO_ATTRIBUTE_H_ 38 | -------------------------------------------------------------------------------- /GenS/Utils/gumbo/gumbo-query/Document.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * 3 | * $Id$ 4 | * 5 | **************************************************************************/ 6 | 7 | /** 8 | * @file $HeadURL$ 9 | * @author $Author$(hoping@baimashi.com) 10 | * @date $Date$ 11 | * @version $Revision$ 12 | * @brief 13 | * 14 | **/ 15 | 16 | #include "Document.h" 17 | 18 | CDocument::CDocument() 19 | { 20 | mpOutput = NULL; 21 | } 22 | 23 | void CDocument::parse(const std::string& aInput) 24 | { 25 | reset(); 26 | mpOutput = gumbo_parse(aInput.c_str()); 27 | } 28 | 29 | CDocument::~CDocument() 30 | { 31 | reset(); 32 | } 33 | 34 | CSelection CDocument::find(std::string aSelector) 35 | { 36 | if (mpOutput == NULL) 37 | { 38 | throw "document not initialized"; 39 | } 40 | 41 | CSelection sel(mpOutput->root); 42 | return sel.find(aSelector); 43 | } 44 | 45 | void CDocument::reset() 46 | { 47 | if (mpOutput != NULL) 48 | { 49 | gumbo_destroy_output(&kGumboDefaultOptions, mpOutput); 50 | mpOutput = NULL; 51 | } 52 | } 53 | 54 | /* vim: set ts=4 sw=4 sts=4 tw=100 noet: */ 55 | 56 | -------------------------------------------------------------------------------- /GenS/Utils/gumbo/gumbo-query/Document.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * 3 | * $Id$ 4 | * 5 | **************************************************************************/ 6 | 7 | /** 8 | * @file $HeadURL$ 9 | * @author $Author$(hoping@baimashi.com) 10 | * @date $Date$ 11 | * @version $Revision$ 12 | * @brief 13 | * 14 | **/ 15 | 16 | #ifndef DOCUMENT_H_ 17 | #define DOCUMENT_H_ 18 | 19 | #include 20 | #include 21 | #include "Selection.h" 22 | 23 | class CDocument: public CObject 24 | { 25 | public: 26 | 27 | CDocument(); 28 | 29 | void parse(const std::string& aInput); 30 | 31 | virtual ~CDocument(); 32 | 33 | CSelection find(std::string aSelector); 34 | 35 | private: 36 | 37 | void reset(); 38 | 39 | private: 40 | 41 | GumboOutput* mpOutput; 42 | }; 43 | 44 | #endif /* DOCUMENT_H_ */ 45 | 46 | /* vim: set ts=4 sw=4 sts=4 tw=100 noet: */ 47 | -------------------------------------------------------------------------------- /GenS/Utils/gumbo/gumbo-query/Node.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * 3 | * $Id$ 4 | * 5 | **************************************************************************/ 6 | 7 | /** 8 | * @file $HeadURL$ 9 | * @author $Author$(hoping@baimashi.com) 10 | * @date $Date$ 11 | * @version $Revision$ 12 | * @brief 13 | * 14 | **/ 15 | 16 | #ifndef NODE_H_ 17 | #define NODE_H_ 18 | 19 | #include 20 | #include 21 | 22 | class CSelection; 23 | 24 | class CNode 25 | { 26 | public: 27 | 28 | CNode(GumboNode* apNode = NULL); 29 | 30 | virtual ~CNode(); 31 | 32 | public: 33 | 34 | bool valid(); 35 | 36 | CNode parent(); 37 | 38 | CNode nextSibling(); 39 | 40 | CNode prevSibling(); 41 | 42 | unsigned int childNum(); 43 | 44 | CNode childAt(size_t i); 45 | 46 | std::string attribute(std::string key); 47 | 48 | std::string text(); 49 | 50 | std::string ownText(); 51 | 52 | size_t startPos(); 53 | 54 | size_t endPos(); 55 | 56 | size_t startPosOuter(); 57 | 58 | size_t endPosOuter(); 59 | 60 | std::string tag(); 61 | 62 | CSelection find(std::string aSelector); 63 | 64 | private: 65 | 66 | GumboNode* mpNode; 67 | }; 68 | 69 | #endif /* NODE_H_ */ 70 | 71 | /* vim: set ts=4 sw=4 sts=4 tw=100 noet: */ 72 | -------------------------------------------------------------------------------- /GenS/Utils/gumbo/gumbo-query/Object.cpp: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * 3 | * $Id$ 4 | * 5 | **************************************************************************/ 6 | 7 | /** 8 | * @file $HeadURL$ 9 | * @author $Author$(hoping@baimashi.com) 10 | * @date $Date$ 11 | * @version $Revision$ 12 | * @brief 13 | * 14 | **/ 15 | 16 | #include "Object.h" 17 | 18 | CObject::CObject() 19 | { 20 | mReferences = 1; 21 | } 22 | 23 | CObject::~CObject() 24 | { 25 | if (mReferences != 1) 26 | { 27 | throw "something wrong, reference count not zero"; 28 | } 29 | } 30 | 31 | void CObject::retain() 32 | { 33 | mReferences++; 34 | } 35 | 36 | void CObject::release() 37 | { 38 | if (mReferences < 0) 39 | { 40 | throw "something wrong, reference count is negative"; 41 | } 42 | 43 | if (mReferences == 1) 44 | { 45 | delete this; 46 | } 47 | else 48 | { 49 | mReferences--; 50 | } 51 | } 52 | 53 | unsigned int CObject::references() 54 | { 55 | return mReferences; 56 | } 57 | 58 | /* vim: set ts=4 sw=4 sts=4 tw=100 noet: */ 59 | 60 | -------------------------------------------------------------------------------- /GenS/Utils/gumbo/gumbo-query/Object.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * 3 | * $Id$ 4 | * 5 | **************************************************************************/ 6 | 7 | /** 8 | * @file $HeadURL$ 9 | * @author $Author$(hoping@baimashi.com) 10 | * @date $Date$ 11 | * @version $Revision$ 12 | * @brief 13 | * 14 | **/ 15 | 16 | #ifndef OBJECT_H_ 17 | #define OBJECT_H_ 18 | 19 | class CObject 20 | { 21 | public: 22 | 23 | CObject(); 24 | 25 | virtual ~CObject(); 26 | 27 | public: 28 | 29 | virtual void retain(); 30 | 31 | virtual void release(); 32 | 33 | unsigned int references(); 34 | 35 | private: 36 | 37 | int mReferences; 38 | }; 39 | 40 | #endif /* OBJECT_H_ */ 41 | 42 | /* vim: set ts=4 sw=4 sts=4 tw=100 noet: */ 43 | -------------------------------------------------------------------------------- /GenS/Utils/gumbo/gumbo-query/QueryUtil.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * 3 | * $Id$ 4 | * 5 | **************************************************************************/ 6 | 7 | /** 8 | * @file $HeadURL$ 9 | * @author $Author$(hoping@baimashi.com) 10 | * @date $Date$ 11 | * @version $Revision$ 12 | * @brief 13 | * 14 | **/ 15 | 16 | #ifndef QUERYUTIL_H_ 17 | #define QUERYUTIL_H_ 18 | 19 | #include 20 | #include 21 | #include 22 | 23 | class CQueryUtil 24 | { 25 | public: 26 | 27 | static std::string tolower(std::string s); 28 | 29 | static std::vector unionNodes(std::vector aNodes1, 30 | std::vector aNode2); 31 | 32 | static bool nodeExists(std::vector aNodes, GumboNode* apNode); 33 | 34 | static std::string nodeText(GumboNode* apNode); 35 | 36 | static std::string nodeOwnText(GumboNode* apNode); 37 | 38 | private: 39 | 40 | static void writeNodeText(GumboNode* apNode, std::string& aText); 41 | 42 | 43 | }; 44 | 45 | #endif /* QUERYUTIL_H_ */ 46 | 47 | /* vim: set ts=4 sw=4 sts=4 tw=100 noet: */ 48 | -------------------------------------------------------------------------------- /GenS/Utils/gumbo/gumbo-query/Selection.h: -------------------------------------------------------------------------------- 1 | /*************************************************************************** 2 | * 3 | * $Id$ 4 | * 5 | **************************************************************************/ 6 | 7 | /** 8 | * @file $HeadURL$ 9 | * @author $Author$(hoping@baimashi.com) 10 | * @date $Date$ 11 | * @version $Revision$ 12 | * @brief 13 | * 14 | **/ 15 | 16 | #ifndef SELECTION_H_ 17 | #define SELECTION_H_ 18 | 19 | #include "Object.h" 20 | #include 21 | #include 22 | #include 23 | 24 | class CNode; 25 | 26 | class CSelection: public CObject 27 | { 28 | 29 | public: 30 | 31 | CSelection(GumboNode* apNode); 32 | 33 | CSelection(std::vector aNodes); 34 | 35 | virtual ~CSelection(); 36 | 37 | public: 38 | 39 | CSelection find(std::string aSelector); 40 | 41 | CNode nodeAt(size_t i); 42 | 43 | size_t nodeNum(); 44 | 45 | private: 46 | 47 | std::vector mNodes; 48 | }; 49 | 50 | #endif /* SELECTION_H_ */ 51 | 52 | /* vim: set ts=4 sw=4 sts=4 tw=100 noet: */ 53 | -------------------------------------------------------------------------------- /GenS/Utils/gumbo/string_piece.h: -------------------------------------------------------------------------------- 1 | // Copyright 2010 Google Inc. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | // 15 | // Author: jdtang@google.com (Jonathan Tang) 16 | 17 | #ifndef GUMBO_STRING_PIECE_H_ 18 | #define GUMBO_STRING_PIECE_H_ 19 | 20 | #include "gumbo.h" 21 | 22 | #ifdef __cplusplus 23 | extern "C" { 24 | #endif 25 | 26 | struct GumboInternalParser; 27 | 28 | // Performs a deep-copy of an GumboStringPiece, allocating a fresh buffer in the 29 | // destination and copying over the characters from source. Dest should be 30 | // empty, with no buffer allocated; otherwise, this leaks it. 31 | void gumbo_string_copy(struct GumboInternalParser* parser, 32 | GumboStringPiece* dest, const GumboStringPiece* source); 33 | 34 | #ifdef __cplusplus 35 | } 36 | #endif 37 | 38 | #endif // GUMBO_STRING_PIECE_H_ 39 | -------------------------------------------------------------------------------- /GenS/Utils/gumbo/tag_sizes.h: -------------------------------------------------------------------------------- 1 | // Generated via `gentags.py src/tag.in`. 2 | // Do not edit; edit src/tag.in instead. 3 | // clang-format off 4 | 4, 4, 5, 4, 4, 4, 5, 6, 8, 8, 4, 7, 7, 3, 5, 2, 2, 2, 2, 2, 2, 6, 6, 6, 7, 1, 2, 3, 10, 2, 2, 2, 2, 2, 2, 6, 10, 4, 3, 1, 2, 6, 5, 1, 4, 1, 3, 4, 4, 4, 4, 3, 4, 3, 3, 3, 1, 1, 1, 4, 4, 2, 2, 3, 3, 4, 2, 3, 3, 3, 5, 3, 6, 5, 6, 5, 5, 5, 6, 5, 6, 3, 4, 4, 2, 2, 2, 2, 5, 6, 10, 14, 3, 13, 4, 5, 7, 8, 3, 5, 5, 5, 2, 2, 2, 4, 8, 6, 5, 5, 6, 6, 8, 8, 6, 8, 6, 6, 8, 5, 7, 7, 4, 8, 6, 7, 7, 3, 5, 8, 8, 7, 7, 3, 6, 7, 9, 2, 6, 8, 3, 5, 6, 4, 7, 8, 4, 6, 2, 3, -------------------------------------------------------------------------------- /GenS/Utils/gumbo/token_type.h: -------------------------------------------------------------------------------- 1 | // Copyright 2011 Google Inc. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | // 15 | // Author: jdtang@google.com (Jonathan Tang) 16 | 17 | #ifndef GUMBO_TOKEN_TYPE_H_ 18 | #define GUMBO_TOKEN_TYPE_H_ 19 | 20 | #ifdef __cplusplus 21 | extern "C" { 22 | #endif 23 | 24 | // An enum representing the type of token. 25 | typedef enum { 26 | GUMBO_TOKEN_DOCTYPE, 27 | GUMBO_TOKEN_START_TAG, 28 | GUMBO_TOKEN_END_TAG, 29 | GUMBO_TOKEN_COMMENT, 30 | GUMBO_TOKEN_WHITESPACE, 31 | GUMBO_TOKEN_CHARACTER, 32 | GUMBO_TOKEN_CDATA, 33 | GUMBO_TOKEN_NULL, 34 | GUMBO_TOKEN_EOF 35 | } GumboTokenType; 36 | 37 | #ifdef __cplusplus 38 | } // extern C 39 | #endif 40 | 41 | #endif // GUMBO_TOKEN_TYPE_H_ 42 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby.xcodeproj/xcuserdata/mac.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | mruby.xcscheme 8 | 9 | orderHint 10 | 3 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | B29CAE5B1DDAEFEE00793332 16 | 17 | primary 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/include/mruby/object.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** mruby/object.h - mruby object definition 3 | ** 4 | ** See Copyright Notice in mruby.h 5 | */ 6 | 7 | #ifndef MRUBY_OBJECT_H 8 | #define MRUBY_OBJECT_H 9 | 10 | #define MRB_OBJECT_HEADER \ 11 | enum mrb_vtype tt:8;\ 12 | uint32_t color:3;\ 13 | uint32_t flags:21;\ 14 | struct RClass *c;\ 15 | struct RBasic *gcnext 16 | 17 | #define MRB_FLAG_TEST(obj, flag) ((obj)->flags & flag) 18 | 19 | 20 | struct RBasic { 21 | MRB_OBJECT_HEADER; 22 | }; 23 | #define mrb_basic_ptr(v) ((struct RBasic*)(mrb_ptr(v))) 24 | 25 | struct RObject { 26 | MRB_OBJECT_HEADER; 27 | struct iv_tbl *iv; 28 | }; 29 | #define mrb_obj_ptr(v) ((struct RObject*)(mrb_ptr(v))) 30 | 31 | #define mrb_immediate_p(x) (mrb_type(x) < MRB_TT_HAS_BASIC) 32 | #define mrb_special_const_p(x) mrb_immediate_p(x) 33 | 34 | struct RFiber { 35 | MRB_OBJECT_HEADER; 36 | struct mrb_context *cxt; 37 | }; 38 | 39 | #endif /* MRUBY_OBJECT_H */ 40 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/include/mruby/re.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** mruby/re.h - Regexp class 3 | ** 4 | ** See Copyright Notice in mruby.h 5 | */ 6 | 7 | #ifndef MRUBY_RE_H 8 | #define MRUBY_RE_H 9 | 10 | #ifdef __cplusplus 11 | extern "C" { 12 | #endif 13 | 14 | #define REGEXP_CLASS "Regexp" 15 | 16 | #ifdef __cplusplus 17 | } 18 | #endif 19 | 20 | #endif /* RE_H */ 21 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/include/mruby/throw.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** mruby/throw.h - mruby exception throwing handler 3 | ** 4 | ** See Copyright Notice in mruby.h 5 | */ 6 | 7 | #ifndef MRB_THROW_H 8 | #define MRB_THROW_H 9 | 10 | #ifdef MRB_ENABLE_CXX_EXCEPTION 11 | 12 | #define MRB_TRY(buf) do { try { 13 | #define MRB_CATCH(buf) } catch(mrb_jmpbuf_impl e) { if (e != (buf)->impl) { throw e; } 14 | #define MRB_END_EXC(buf) } } while(0) 15 | 16 | #define MRB_THROW(buf) throw((buf)->impl) 17 | typedef mrb_int mrb_jmpbuf_impl; 18 | 19 | #else 20 | 21 | #include 22 | 23 | #if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) 24 | #define MRB_SETJMP _setjmp 25 | #define MRB_LONGJMP _longjmp 26 | #else 27 | #define MRB_SETJMP setjmp 28 | #define MRB_LONGJMP longjmp 29 | #endif 30 | 31 | #define MRB_TRY(buf) do { if (MRB_SETJMP((buf)->impl) == 0) { 32 | #define MRB_CATCH(buf) } else { 33 | #define MRB_END_EXC(buf) } } while(0) 34 | 35 | #define MRB_THROW(buf) MRB_LONGJMP((buf)->impl, 1); 36 | #define mrb_jmpbuf_impl jmp_buf 37 | 38 | #endif 39 | 40 | struct mrb_jmpbuf { 41 | mrb_jmpbuf_impl impl; 42 | 43 | #ifdef MRB_ENABLE_CXX_EXCEPTION 44 | static mrb_int jmpbuf_id; 45 | mrb_jmpbuf() : impl(jmpbuf_id++) {} 46 | #endif 47 | }; 48 | 49 | #endif /* MRB_THROW_H */ 50 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-compiler/bintest/mrbc.rb: -------------------------------------------------------------------------------- 1 | require 'tempfile' 2 | 3 | assert('Compiling multiple files without new line in last line. #2361') do 4 | a, b, out = Tempfile.new('a.rb'), Tempfile.new('b.rb'), Tempfile.new('out.mrb') 5 | a.write('module A; end') 6 | a.flush 7 | b.write('module B; end') 8 | b.flush 9 | result = `#{cmd('mrbc')} -c -o #{out.path} #{a.path} #{b.path} 2>&1` 10 | assert_equal "#{cmd('mrbc')}:#{a.path}:Syntax OK", result.chomp 11 | assert_equal 0, $?.exitstatus 12 | end 13 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-enum-ext/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-enum-ext') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'Enumerable module extension' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-enum-lazy/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-enum-lazy') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'Enumerable::Lazy class' 5 | spec.add_dependency('mruby-enumerator', :core => 'mruby-enumerator') 6 | spec.add_dependency('mruby-enum-ext', :core => 'mruby-enum-ext') 7 | end 8 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-enum-lazy/test/lazy.rb: -------------------------------------------------------------------------------- 1 | assert("Enumerable::Lazy") do 2 | a = [1, 2] 3 | assert_equal Enumerable::Lazy, a.lazy.class 4 | end 5 | 6 | assert("Enumerable::Lazy laziness") do 7 | a = Object.new 8 | def a.each 9 | return to_enum :each unless block_given? 10 | self.b << 10 11 | yield 1 12 | self.b << 20 13 | yield 2 14 | self.b << 30 15 | yield 3 16 | self.b << 40 17 | yield 4 18 | self.b << 50 19 | yield 5 20 | end 21 | def a.b(b=nil) 22 | @b = b if b 23 | @b 24 | end 25 | 26 | a.b([]) 27 | assert_equal [1,2], a.each.lazy.take(2).force 28 | assert_equal [10,20], a.b 29 | 30 | a.b([]) 31 | assert_equal [2,4], a.each.lazy.select{|x|x%2==0}.take(2).force 32 | assert_equal [10,20,30,40], a.b 33 | 34 | a.b([]) 35 | assert_equal [1], a.each.lazy.take_while{|x|x<2}.take(1).force 36 | assert_equal [10], a.b 37 | 38 | a.b([]) 39 | assert_equal [1], a.each.lazy.take_while{|x|x<2}.take(4).force 40 | assert_equal [10,20], a.b 41 | end 42 | 43 | assert("Enumerable::Lazy#zip with cycle") do 44 | e1 = [1, 2, 3].cycle 45 | e2 = [:a, :b].cycle 46 | assert_equal [[1,:a],[2,:b],[3,:a]], e1.lazy.zip(e2).first(3) 47 | end 48 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-enumerator/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-enumerator') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.add_dependency('mruby-fiber', :core => 'mruby-fiber') 5 | spec.add_dependency 'mruby-enum-ext', :core => 'mruby-enum-ext' 6 | spec.summary = 'Enumerator class' 7 | end 8 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-env/.travis.yml: -------------------------------------------------------------------------------- 1 | script: 2 | - "ruby run_test.rb all test" 3 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-eval/gem_init.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is loading the irep 3 | * Ruby GEM code. 4 | * 5 | * IMPORTANT: 6 | * This file was generated! 7 | * All manual changes will get lost. 8 | */ 9 | #include "mruby.h" 10 | void mrb_mruby_eval_gem_init(mrb_state *mrb); 11 | void mrb_mruby_eval_gem_final(mrb_state *mrb); 12 | 13 | void GENERATED_TMP_mrb_mruby_eval_gem_init(mrb_state *mrb) { 14 | int ai = mrb_gc_arena_save(mrb); 15 | mrb_mruby_eval_gem_init(mrb); 16 | mrb_gc_arena_restore(mrb, ai); 17 | } 18 | 19 | void GENERATED_TMP_mrb_mruby_eval_gem_final(mrb_state *mrb) { 20 | mrb_mruby_eval_gem_final(mrb); 21 | } 22 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-fiber/gem_init.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is loading the irep 3 | * Ruby GEM code. 4 | * 5 | * IMPORTANT: 6 | * This file was generated! 7 | * All manual changes will get lost. 8 | */ 9 | #include 10 | void mrb_mruby_fiber_gem_init(mrb_state *mrb); 11 | void mrb_mruby_fiber_gem_final(mrb_state *mrb); 12 | 13 | void GENERATED_TMP_mrb_mruby_fiber_gem_init(mrb_state *mrb) { 14 | int ai = mrb_gc_arena_save(mrb); 15 | mrb_mruby_fiber_gem_init(mrb); 16 | mrb_gc_arena_restore(mrb, ai); 17 | } 18 | 19 | void GENERATED_TMP_mrb_mruby_fiber_gem_final(mrb_state *mrb) { 20 | mrb_mruby_fiber_gem_final(mrb); 21 | } 22 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-fiber/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-fiber') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'Fiber class' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-hash-ext/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-hash-ext') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'Hash class extension' 5 | spec.add_dependency 'mruby-enum-ext', :core => 'mruby-enum-ext' 6 | spec.add_dependency 'mruby-array-ext', :core => 'mruby-array-ext' 7 | end 8 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-hash-ext/src/hash-ext.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** hash.c - Hash class 3 | ** 4 | ** See Copyright Notice in mruby.h 5 | */ 6 | 7 | #include 8 | #include 9 | #include 10 | 11 | /* 12 | * call-seq: 13 | * hsh.values_at(key, ...) -> array 14 | * 15 | * Return an array containing the values associated with the given keys. 16 | * Also see Hash.select. 17 | * 18 | * h = { "cat" => "feline", "dog" => "canine", "cow" => "bovine" } 19 | * h.values_at("cow", "cat") #=> ["bovine", "feline"] 20 | */ 21 | 22 | static mrb_value 23 | hash_values_at(mrb_state *mrb, mrb_value hash) 24 | { 25 | mrb_value *argv, result; 26 | mrb_int argc, i; 27 | int ai; 28 | 29 | mrb_get_args(mrb, "*", &argv, &argc); 30 | result = mrb_ary_new_capa(mrb, argc); 31 | ai = mrb_gc_arena_save(mrb); 32 | for (i = 0; i < argc; i++) { 33 | mrb_ary_push(mrb, result, mrb_hash_get(mrb, hash, argv[i])); 34 | mrb_gc_arena_restore(mrb, ai); 35 | } 36 | return result; 37 | } 38 | 39 | void 40 | mrb_mruby_hash_ext_gem_init(mrb_state *mrb) 41 | { 42 | struct RClass *h; 43 | 44 | h = mrb->hash_class; 45 | mrb_define_method(mrb, h, "values_at", hash_values_at, MRB_ARGS_ANY()); 46 | } 47 | 48 | void 49 | mrb_mruby_hash_ext_gem_final(mrb_state *mrb) 50 | { 51 | } 52 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-http/gem_init.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is loading the irep 3 | * Ruby GEM code. 4 | * 5 | * IMPORTANT: 6 | * This file was generated! 7 | * All manual changes will get lost. 8 | */ 9 | #include "mruby.h" 10 | void mrb_mruby_http_gem_init(mrb_state *mrb); 11 | void mrb_mruby_http_gem_final(mrb_state *mrb); 12 | 13 | void GENERATED_TMP_mrb_mruby_http_gem_init(mrb_state *mrb) { 14 | int ai = mrb_gc_arena_save(mrb); 15 | mrb_mruby_http_gem_init(mrb); 16 | mrb_gc_arena_restore(mrb, ai); 17 | } 18 | 19 | void GENERATED_TMP_mrb_mruby_http_gem_final(mrb_state *mrb) { 20 | mrb_mruby_http_gem_final(mrb); 21 | } 22 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-http/include/mrb_http.h: -------------------------------------------------------------------------------- 1 | #ifndef MRB_HTTP_H 2 | #define MRB_HTTP_H 3 | 4 | void mrb_mruby_http_gem_init(mrb_state*); 5 | 6 | #endif /* MRB_HTTP_H */ 7 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-io/.travis.yml: -------------------------------------------------------------------------------- 1 | script: 2 | - "ruby run_test.rb all test" 3 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-io/include/mruby/ext/io.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** io.h - IO class 3 | */ 4 | 5 | #ifndef MRUBY_IO_H 6 | #define MRUBY_IO_H 7 | 8 | #if defined(__cplusplus) 9 | extern "C" { 10 | #endif 11 | 12 | struct mrb_io { 13 | int fd; /* file descriptor, or -1 */ 14 | int fd2; /* file descriptor to write if it's different from fd, or -1 */ 15 | int pid; /* child's pid (for pipes) */ 16 | unsigned int readable:1, 17 | writable:1, 18 | sync:1; 19 | }; 20 | 21 | #define FMODE_READABLE 0x00000001 22 | #define FMODE_WRITABLE 0x00000002 23 | #define FMODE_READWRITE (FMODE_READABLE|FMODE_WRITABLE) 24 | #define FMODE_BINMODE 0x00000004 25 | #define FMODE_APPEND 0x00000040 26 | #define FMODE_CREATE 0x00000080 27 | #define FMODE_TRUNC 0x00000800 28 | 29 | #define E_IO_ERROR (mrb_class_get(mrb, "IOError")) 30 | #define E_EOF_ERROR (mrb_class_get(mrb, "EOFError")) 31 | 32 | mrb_value mrb_io_fileno(mrb_state *mrb, mrb_value io); 33 | 34 | #if defined(__cplusplus) 35 | } /* extern "C" { */ 36 | #endif 37 | #endif /* MRUBY_IO_H */ 38 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-io/src/mruby_io_gem.c: -------------------------------------------------------------------------------- 1 | #include "mruby.h" 2 | 3 | void mrb_init_io(mrb_state *mrb); 4 | void mrb_init_file(mrb_state *mrb); 5 | void mrb_init_file_test(mrb_state *mrb); 6 | 7 | #define DONE mrb_gc_arena_restore(mrb, 0) 8 | 9 | void 10 | mrb_mruby_io_gem_init(mrb_state* mrb) 11 | { 12 | mrb_init_io(mrb); DONE; 13 | mrb_init_file(mrb); DONE; 14 | mrb_init_file_test(mrb); DONE; 15 | } 16 | 17 | void 18 | mrb_mruby_io_gem_final(mrb_state* mrb) 19 | { 20 | } 21 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-kernel-ext/gem_init.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is loading the irep 3 | * Ruby GEM code. 4 | * 5 | * IMPORTANT: 6 | * This file was generated! 7 | * All manual changes will get lost. 8 | */ 9 | #include 10 | void mrb_mruby_kernel_ext_gem_init(mrb_state *mrb); 11 | void mrb_mruby_kernel_ext_gem_final(mrb_state *mrb); 12 | 13 | void GENERATED_TMP_mrb_mruby_kernel_ext_gem_init(mrb_state *mrb) { 14 | int ai = mrb_gc_arena_save(mrb); 15 | mrb_mruby_kernel_ext_gem_init(mrb); 16 | mrb_gc_arena_restore(mrb, ai); 17 | } 18 | 19 | void GENERATED_TMP_mrb_mruby_kernel_ext_gem_final(mrb_state *mrb) { 20 | mrb_mruby_kernel_ext_gem_final(mrb); 21 | } 22 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-kernel-ext/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-kernel-ext') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'Kernel module extension' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-math/gem_init.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is loading the irep 3 | * Ruby GEM code. 4 | * 5 | * IMPORTANT: 6 | * This file was generated! 7 | * All manual changes will get lost. 8 | */ 9 | #include 10 | void mrb_mruby_math_gem_init(mrb_state *mrb); 11 | void mrb_mruby_math_gem_final(mrb_state *mrb); 12 | 13 | void GENERATED_TMP_mrb_mruby_math_gem_init(mrb_state *mrb) { 14 | int ai = mrb_gc_arena_save(mrb); 15 | mrb_mruby_math_gem_init(mrb); 16 | mrb_gc_arena_restore(mrb, ai); 17 | } 18 | 19 | void GENERATED_TMP_mrb_mruby_math_gem_final(mrb_state *mrb) { 20 | mrb_mruby_math_gem_final(mrb); 21 | } 22 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-math/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-math') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'standard Math module' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-numeric-ext/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-numeric-ext') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'Numeric class extension' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-numeric-ext/mrblib/numeric_ext.rb: -------------------------------------------------------------------------------- 1 | module Integral 2 | def div(other) 3 | self.divmod(other)[0] 4 | end 5 | 6 | def zero? 7 | self == 0 8 | end 9 | 10 | def nonzero? 11 | if self == 0 12 | nil 13 | else 14 | self 15 | end 16 | end 17 | end 18 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-numeric-ext/src/numeric_ext.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | static mrb_value 5 | mrb_int_chr(mrb_state *mrb, mrb_value x) 6 | { 7 | mrb_int chr; 8 | char c; 9 | 10 | chr = mrb_fixnum(x); 11 | if (chr >= (1 << CHAR_BIT)) { 12 | mrb_raisef(mrb, E_RANGE_ERROR, "%S out of char range", x); 13 | } 14 | c = (char)chr; 15 | 16 | return mrb_str_new(mrb, &c, 1); 17 | } 18 | 19 | void 20 | mrb_mruby_numeric_ext_gem_init(mrb_state* mrb) 21 | { 22 | struct RClass *i = mrb_class_get(mrb, "Integer"); 23 | 24 | mrb_define_method(mrb, i, "chr", mrb_int_chr, MRB_ARGS_NONE()); 25 | } 26 | 27 | void 28 | mrb_mruby_numeric_ext_gem_final(mrb_state* mrb) 29 | { 30 | } 31 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-numeric-ext/test/numeric.rb: -------------------------------------------------------------------------------- 1 | ## 2 | # Numeric(Ext) Test 3 | 4 | assert('Integer#chr') do 5 | assert_equal("A", 65.chr) 6 | assert_equal("B", 0x42.chr) 7 | 8 | # multibyte encoding (not support yet) 9 | assert_raise(RangeError) { 256.chr } 10 | end 11 | 12 | assert('Integer#div') do 13 | assert_equal 52, 365.div(7) 14 | end 15 | 16 | assert('Float#div') do 17 | assert_float 52, 365.2425.div(7) 18 | end 19 | 20 | assert('Integer#zero?') do 21 | assert_equal true, 0.zero? 22 | assert_equal false, 1.zero? 23 | end 24 | 25 | assert('Integer#nonzero?') do 26 | assert_equal nil, 0.nonzero? 27 | assert_equal 1000, 1000.nonzero? 28 | end 29 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-object-ext/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-object-ext') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'Object class extension' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-object-ext/mrblib/object.rb: -------------------------------------------------------------------------------- 1 | class Object 2 | ## 3 | # call-seq: 4 | # obj.tap{|x|...} -> obj 5 | # 6 | # Yields x to the block, and then returns x. 7 | # The primary purpose of this method is to "tap into" a method chain, 8 | # in order to perform operations on intermediate results within the chain. 9 | # 10 | # (1..10) .tap {|x| puts "original: #{x.inspect}"} 11 | # .to_a .tap {|x| puts "array: #{x.inspect}"} 12 | # .select {|x| x%2==0} .tap {|x| puts "evens: #{x.inspect}"} 13 | # .map { |x| x*x } .tap {|x| puts "squares: #{x.inspect}"} 14 | # 15 | def tap 16 | yield self 17 | self 18 | end 19 | end 20 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-object-ext/test/nil.rb: -------------------------------------------------------------------------------- 1 | assert('NilClass#to_a') do 2 | assert_equal [], nil.to_a 3 | end 4 | 5 | assert('NilClass#to_f') do 6 | assert_equal 0.0, nil.to_f 7 | end 8 | 9 | assert('NilClass#to_i') do 10 | assert_equal 0, nil.to_i 11 | end 12 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-object-ext/test/object.rb: -------------------------------------------------------------------------------- 1 | assert('Object#instance_exec') do 2 | class KlassWithSecret 3 | def initialize 4 | @secret = 99 5 | end 6 | end 7 | k = KlassWithSecret.new 8 | assert_equal 104, k.instance_exec(5) {|x| @secret+x } 9 | end 10 | 11 | assert('Object#tap') do 12 | ret = [] 13 | (1..10) .tap {|x| ret << "original: #{x.inspect}"} 14 | .to_a .tap {|x| ret << "array: #{x.inspect}"} 15 | .select {|x| x%2==0} .tap {|x| ret << "evens: #{x.inspect}"} 16 | .map { |x| x*x } .tap {|x| ret << "squares: #{x.inspect}"} 17 | 18 | assert_equal [ 19 | "original: 1..10", 20 | "array: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]", 21 | "evens: [2, 4, 6, 8, 10]", 22 | "squares: [4, 16, 36, 64, 100]" 23 | ], ret 24 | assert_equal(:tap_ok, Class.new {def m; tap{return :tap_ok}; end}.new.m) 25 | end 26 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-objectspace/gem_init.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is loading the irep 3 | * Ruby GEM code. 4 | * 5 | * IMPORTANT: 6 | * This file was generated! 7 | * All manual changes will get lost. 8 | */ 9 | #include 10 | void mrb_mruby_objectspace_gem_init(mrb_state *mrb); 11 | void mrb_mruby_objectspace_gem_final(mrb_state *mrb); 12 | 13 | void GENERATED_TMP_mrb_mruby_objectspace_gem_init(mrb_state *mrb) { 14 | int ai = mrb_gc_arena_save(mrb); 15 | mrb_mruby_objectspace_gem_init(mrb); 16 | mrb_gc_arena_restore(mrb, ai); 17 | } 18 | 19 | void GENERATED_TMP_mrb_mruby_objectspace_gem_final(mrb_state *mrb) { 20 | mrb_mruby_objectspace_gem_final(mrb); 21 | } 22 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-objectspace/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-objectspace') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'ObjectSpace class' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-print/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-print') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'standard print/puts/p' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-proc-ext/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-proc-ext') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'Proc class extension' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-proc-ext/mrblib/proc.rb: -------------------------------------------------------------------------------- 1 | class Proc 2 | 3 | def ===(*args) 4 | call(*args) 5 | end 6 | 7 | def yield(*args) 8 | call(*args) 9 | end 10 | 11 | def to_proc 12 | self 13 | end 14 | 15 | def curry(arity=self.arity) 16 | type = :proc 17 | abs = lambda {|a| a < 0 ? -a - 1 : a} 18 | arity = abs[arity] 19 | if lambda? 20 | type = :lambda 21 | self_arity = self.arity 22 | if (self_arity >= 0 && arity != self_arity) || 23 | (self_arity < 0 && abs[self_arity] > arity) 24 | raise ArgumentError, "wrong number of arguments (#{arity} for #{abs[self_arity]})" 25 | end 26 | end 27 | 28 | pproc = self 29 | make_curry = proc do |given_args=[]| 30 | send(type) do |*args| 31 | new_args = given_args + args 32 | if new_args.size >= arity 33 | pproc[*new_args] 34 | else 35 | make_curry[new_args] 36 | end 37 | end 38 | end 39 | make_curry.call 40 | end 41 | 42 | end 43 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-random/gem_init.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is loading the irep 3 | * Ruby GEM code. 4 | * 5 | * IMPORTANT: 6 | * This file was generated! 7 | * All manual changes will get lost. 8 | */ 9 | #include 10 | void mrb_mruby_random_gem_init(mrb_state *mrb); 11 | void mrb_mruby_random_gem_final(mrb_state *mrb); 12 | 13 | void GENERATED_TMP_mrb_mruby_random_gem_init(mrb_state *mrb) { 14 | int ai = mrb_gc_arena_save(mrb); 15 | mrb_mruby_random_gem_init(mrb); 16 | mrb_gc_arena_restore(mrb, ai); 17 | } 18 | 19 | void GENERATED_TMP_mrb_mruby_random_gem_final(mrb_state *mrb) { 20 | mrb_mruby_random_gem_final(mrb); 21 | } 22 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-random/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-random') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'Random class' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-random/src/random.h: -------------------------------------------------------------------------------- 1 | /* 2 | ** random.h - Random module 3 | ** 4 | ** See Copyright Notice in mruby.h 5 | */ 6 | 7 | #ifndef MRUBY_RANDOM_H 8 | #define MRUBY_RANDOM_H 9 | 10 | void mrb_mruby_random_gem_init(mrb_state *mrb); 11 | 12 | #endif 13 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-range-ext/gem_init.c: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is loading the irep 3 | * Ruby GEM code. 4 | * 5 | * IMPORTANT: 6 | * This file was generated! 7 | * All manual changes will get lost. 8 | */ 9 | #include 10 | void mrb_mruby_range_ext_gem_init(mrb_state *mrb); 11 | void mrb_mruby_range_ext_gem_final(mrb_state *mrb); 12 | 13 | void GENERATED_TMP_mrb_mruby_range_ext_gem_init(mrb_state *mrb) { 14 | int ai = mrb_gc_arena_save(mrb); 15 | mrb_mruby_range_ext_gem_init(mrb); 16 | mrb_gc_arena_restore(mrb, ai); 17 | } 18 | 19 | void GENERATED_TMP_mrb_mruby_range_ext_gem_final(mrb_state *mrb) { 20 | mrb_mruby_range_ext_gem_final(mrb); 21 | } 22 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-range-ext/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-range-ext') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'Range class extension' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-range-ext/test/range.rb: -------------------------------------------------------------------------------- 1 | ## 2 | # Range(Ext) Test 3 | 4 | assert('Range#cover?') do 5 | assert_true ("a".."z").cover?("c") 6 | assert_true !("a".."z").cover?("5") 7 | assert_true ("a".."z").cover?("cc") 8 | end 9 | 10 | assert('Range#first') do 11 | assert_equal 10, (10..20).first 12 | assert_equal [10, 11, 12], (10..20).first(3) 13 | end 14 | 15 | assert('Range#last') do 16 | assert_equal 20, (10..20).last 17 | assert_equal 20, (10...20).last 18 | assert_equal [18, 19, 20], (10..20).last(3) 19 | assert_equal [17, 18, 19], (10...20).last(3) 20 | end 21 | 22 | assert('Range#size') do 23 | assert_equal 42, (1..42).size 24 | assert_equal 41, (1...42).size 25 | assert_equal 6, (1...6.3).size 26 | assert_equal 5, (1...6.0).size 27 | assert_equal 5, (1.1...6).size 28 | assert_nil ('a'..'z').size 29 | end 30 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-require/.travis.yml: -------------------------------------------------------------------------------- 1 | script: 2 | - "ruby run_test.rb all test" 3 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-require/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-require') do |spec| 2 | spec.license = 'MIT' 3 | spec.authors = 'Internet Initiative Japan Inc.' 4 | 5 | spec.add_dependency 'mruby-array-ext' 6 | spec.add_dependency 'mruby-dir' 7 | spec.add_dependency 'mruby-io' 8 | spec.add_dependency 'mruby-tempfile' 9 | spec.add_dependency 'mruby-time' 10 | spec.add_dependency 'mruby-eval' 11 | 12 | spec.cc.include_paths << "#{build.root}/src" 13 | end 14 | 15 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-sprintf/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-sprintf') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'standard Kernel#sprintf method' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-sprintf/mrblib/string.rb: -------------------------------------------------------------------------------- 1 | class String 2 | def %(args) 3 | if args.is_a? Array 4 | sprintf(self, *args) 5 | else 6 | sprintf(self, args) 7 | end 8 | end 9 | end 10 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-sprintf/src/kernel.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** kernel.c - Kernel module suppliment 3 | ** 4 | ** See Copyright Notice in mruby.h 5 | */ 6 | 7 | #include 8 | 9 | mrb_value mrb_f_sprintf(mrb_state *mrb, mrb_value obj); /* in sprintf.c */ 10 | 11 | void 12 | mrb_mruby_sprintf_gem_init(mrb_state* mrb) 13 | { 14 | struct RClass *krn; 15 | 16 | if (mrb->kernel_module == NULL) { 17 | mrb->kernel_module = mrb_define_module(mrb, "Kernel"); /* Might be PARANOID. */ 18 | } 19 | krn = mrb->kernel_module; 20 | 21 | mrb_define_method(mrb, krn, "sprintf", mrb_f_sprintf, MRB_ARGS_ANY()); 22 | mrb_define_method(mrb, krn, "format", mrb_f_sprintf, MRB_ARGS_ANY()); 23 | } 24 | 25 | void 26 | mrb_mruby_sprintf_gem_final(mrb_state* mrb) 27 | { 28 | /* nothing to do. */ 29 | } 30 | 31 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-sprintf/test/sprintf.rb: -------------------------------------------------------------------------------- 1 | #assert('Kernel.sprintf') do 2 | #end 3 | 4 | assert('String#%') do 5 | assert_equal "one=1", "one=%d" % 1 6 | assert_equal "1 one 1.0", "%d %s %3.1f" % [ 1, "one", 1.01 ] 7 | assert_equal "123 < 456", "%{num} < %s" % { num: 123, str: "456" } 8 | assert_equal 16, ("%b" % (1<<15)).size 9 | end 10 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-string-ext/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-string-ext') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'String class extension' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-struct/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-struct') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'standard Struct class' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-symbol-ext/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-symbol-ext') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'Symbol class extension' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-symbol-ext/mrblib/symbol.rb: -------------------------------------------------------------------------------- 1 | class Symbol 2 | include Comparable 3 | 4 | alias intern to_sym 5 | 6 | def to_proc 7 | ->(obj,*args,&block) do 8 | obj.__send__(self, *args, &block) 9 | end 10 | end 11 | 12 | ## 13 | # call-seq: 14 | # sym.capitalize -> symbol 15 | # 16 | # Same as sym.to_s.capitalize.intern. 17 | 18 | def capitalize 19 | (self.to_s.capitalize! || self).to_sym 20 | end 21 | 22 | ## 23 | # call-seq: 24 | # sym.downcase -> symbol 25 | # 26 | # Same as sym.to_s.downcase.intern. 27 | 28 | def downcase 29 | (self.to_s.downcase! || self).to_sym 30 | end 31 | 32 | ## 33 | # call-seq: 34 | # sym.upcase -> symbol 35 | # 36 | # Same as sym.to_s.upcase.intern. 37 | 38 | def upcase 39 | (self.to_s.upcase! || self).to_sym 40 | end 41 | 42 | ## 43 | # call-seq: 44 | # sym.casecmp(other) -> -1, 0, +1 or nil 45 | # 46 | # Case-insensitive version of Symbol#<=>. 47 | 48 | def casecmp(other) 49 | return nil unless other.kind_of?(Symbol) 50 | lhs = self.to_s; lhs.upcase! 51 | rhs = other.to_s; rhs.upcase! 52 | lhs <=> rhs 53 | end 54 | 55 | # 56 | # call-seq: 57 | # sym.empty? -> true or false 58 | # 59 | # Returns that _sym_ is :"" or not. 60 | 61 | def empty? 62 | self.length == 0 63 | end 64 | 65 | end 66 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-symbol-ext/test/symbol.rb: -------------------------------------------------------------------------------- 1 | ## 2 | # Symbol(Ext) Test 3 | 4 | assert('Symbol#to_proc') do 5 | assert_equal 5, :abs.to_proc[-5] 6 | end 7 | 8 | assert('Symbol.all_symbols') do 9 | foo = [:__symbol_test_1, :__symbol_test_2, :__symbol_test_3].sort 10 | symbols = Symbol.all_symbols.select{|sym|sym.to_s.include? '__symbol_test'}.sort 11 | assert_equal foo, symbols 12 | end 13 | 14 | assert("Symbol#length") do 15 | assert_equal 5, :hello.size 16 | assert_equal 5, :mruby.length 17 | end 18 | 19 | assert("Symbol#capitalize") do 20 | assert_equal :Hello, :hello.capitalize 21 | assert_equal :Hello, :HELLO.capitalize 22 | assert_equal :Hello, :Hello.capitalize 23 | end 24 | 25 | assert("Symbol#downcase") do 26 | assert_equal :hello, :hEllO.downcase 27 | assert_equal :hello, :hello.downcase 28 | end 29 | 30 | assert("Symbol#upcase") do 31 | assert_equal :HELLO, :hEllO.upcase 32 | assert_equal :HELLO, :HELLO.upcase 33 | end 34 | 35 | assert("Symbol#casecmp") do 36 | assert_equal 0, :HELLO.casecmp(:hEllO) 37 | assert_equal 1, :HELLO.casecmp(:hEllN) 38 | assert_equal(-1, :HELLO.casecmp(:hEllP)) 39 | assert_nil :HELLO.casecmp("hEllO") 40 | end 41 | 42 | assert("Symbol#empty?") do 43 | assert_true :''.empty? 44 | end 45 | 46 | assert('Symbol#intern') do 47 | assert_equal :test, :test.intern 48 | end 49 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-tempfile/.travis.yml: -------------------------------------------------------------------------------- 1 | script: 2 | - "ruby run_test.rb all test" 3 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-time/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-time') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'standard Time class' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-time/mrblib/time.rb: -------------------------------------------------------------------------------- 1 | class Time 2 | def sunday?; wday == 0 end 3 | def monday?; wday == 1 end 4 | def tuesday?; wday == 2 end 5 | def wednesday?; wday == 3 end 6 | def thursday?; wday == 4 end 7 | def friday?; wday == 5 end 8 | def saturday?; wday == 6 end 9 | end 10 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-toplevel-ext/mrbgem.rake: -------------------------------------------------------------------------------- 1 | MRuby::Gem::Specification.new('mruby-toplevel-ext') do |spec| 2 | spec.license = 'MIT' 3 | spec.author = 'mruby developers' 4 | spec.summary = 'toplevel object (main) methods extension' 5 | end 6 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-toplevel-ext/mrblib/toplevel.rb: -------------------------------------------------------------------------------- 1 | 2 | def self.include (*modules) 3 | self.class.include(*modules) 4 | end 5 | 6 | def self.private(*methods) 7 | end 8 | def self.protected(*methods) 9 | end 10 | def self.public(*methods) 11 | end 12 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/mrbgems/mruby-toplevel-ext/test/toplevel.rb: -------------------------------------------------------------------------------- 1 | ## 2 | # Toplevel Self(Ext) Test 3 | 4 | assert('Toplevel#include') do 5 | module ToplevelTestModule1 6 | def method_foo 7 | :foo 8 | end 9 | 10 | CONST_BAR = :bar 11 | end 12 | 13 | module ToplevelTestModule2 14 | CONST_BAR = :bar2 15 | end 16 | 17 | self.include ToplevelTestModule2, ToplevelTestModule1 18 | 19 | assert_true self.class.included_modules.include?( ToplevelTestModule1 ) 20 | assert_true self.class.included_modules.include?( ToplevelTestModule2 ) 21 | assert_equal :foo, method_foo 22 | assert_equal :bar2, CONST_BAR 23 | end 24 | 25 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/src/compar.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** compar.c - Comparable module 3 | ** 4 | ** See Copyright Notice in mruby.h 5 | */ 6 | 7 | #include 8 | 9 | void 10 | mrb_init_comparable(mrb_state *mrb) 11 | { 12 | mrb_define_module(mrb, "Comparable"); /* 15.3.3 */ 13 | } 14 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/src/crc.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** crc.c - calculate CRC 3 | ** 4 | ** See Copyright Notice in mruby.h 5 | */ 6 | 7 | #include 8 | #include 9 | #include 10 | 11 | /* Calculate CRC (CRC-16-CCITT) 12 | ** 13 | ** 0000_0000_0000_0000_0000_0000_0000_0000 14 | ** ^|------- CRC -------|- work --| 15 | ** carry 16 | */ 17 | #define CRC_16_CCITT 0x11021ul /* x^16+x^12+x^5+1 */ 18 | #define CRC_XOR_PATTERN (CRC_16_CCITT << 8) 19 | #define CRC_CARRY_BIT (0x01000000) 20 | 21 | uint16_t 22 | calc_crc_16_ccitt(const uint8_t *src, size_t nbytes, uint16_t crc) 23 | { 24 | size_t ibyte; 25 | uint32_t ibit; 26 | uint32_t crcwk = crc << 8; 27 | 28 | for (ibyte = 0; ibyte < nbytes; ibyte++) { 29 | crcwk |= *src++; 30 | for (ibit = 0; ibit < CHAR_BIT; ibit++) { 31 | crcwk <<= 1; 32 | if (crcwk & CRC_CARRY_BIT) { 33 | crcwk ^= CRC_XOR_PATTERN; 34 | } 35 | } 36 | } 37 | return (uint16_t)(crcwk >> 8); 38 | } 39 | 40 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/src/enum.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** enum.c - Enumerable module 3 | ** 4 | ** See Copyright Notice in mruby.h 5 | */ 6 | 7 | #include 8 | 9 | void 10 | mrb_init_enumerable(mrb_state *mrb) 11 | { 12 | mrb_define_module(mrb, "Enumerable"); /* 15.3.2 */ 13 | } 14 | 15 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/src/error.h: -------------------------------------------------------------------------------- 1 | /* this header file is to be removed soon. 2 | added for compatibility purpose (1.0.0) */ 3 | #include 4 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/src/ext/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dbsGen/GenShelfV3_iOS/4e5092daa70151b4cb90fe0a0e80c7910820d80c/GenS/Utils/mruby/mruby/src/ext/.gitkeep -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/src/mruby_core.rake: -------------------------------------------------------------------------------- 1 | MRuby.each_target do 2 | current_dir = File.dirname(__FILE__).relative_path_from(Dir.pwd) 3 | relative_from_root = File.dirname(__FILE__).relative_path_from(MRUBY_ROOT) 4 | current_build_dir = "#{build_dir}/#{relative_from_root}" 5 | 6 | objs = Dir.glob("#{current_dir}/*.c").map { |f| 7 | next nil if cxx_abi_enabled? and f =~ /(error|vm).c$/ 8 | objfile(f.pathmap("#{current_build_dir}/%n")) 9 | }.compact 10 | 11 | if cxx_abi_enabled? 12 | objs += %w(vm error).map { |v| compile_as_cxx "#{current_dir}/#{v}.c", "#{current_build_dir}/#{v}.cxx" } 13 | end 14 | self.libmruby << objs 15 | 16 | file libfile("#{build_dir}/lib/libmruby_core") => objs do |t| 17 | archiver.run t.name, t.prerequisites 18 | end 19 | end 20 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/src/opcode.h: -------------------------------------------------------------------------------- 1 | /* this header file is to be removed soon. */ 2 | #include 3 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/src/print.c: -------------------------------------------------------------------------------- 1 | /* 2 | ** print.c - Kernel.#p 3 | ** 4 | ** See Copyright Notice in mruby.h 5 | */ 6 | 7 | #include 8 | #include 9 | #include 10 | 11 | #ifndef MRB_DISABLE_STDIO 12 | static void 13 | printstr(mrb_value obj, FILE *stream) 14 | { 15 | if (mrb_string_p(obj)) { 16 | fwrite(RSTRING_PTR(obj), RSTRING_LEN(obj), 1, stream); 17 | putc('\n', stream); 18 | } 19 | } 20 | #else 21 | # define printstr(obj, stream) (void)0 22 | #endif 23 | 24 | MRB_API void 25 | mrb_p(mrb_state *mrb, mrb_value obj) 26 | { 27 | printstr(mrb_inspect(mrb, obj), stdout); 28 | } 29 | 30 | MRB_API void 31 | mrb_print_error(mrb_state *mrb) 32 | { 33 | mrb_print_backtrace(mrb); 34 | printstr(mrb_funcall(mrb, mrb_obj_value(mrb->exc), "inspect", 0), stderr); 35 | } 36 | 37 | MRB_API void 38 | mrb_show_version(mrb_state *mrb) 39 | { 40 | printstr(mrb_const_get(mrb, mrb_obj_value(mrb->object_class), mrb_intern_lit(mrb, "MRUBY_DESCRIPTION")), stdout); 41 | } 42 | 43 | MRB_API void 44 | mrb_show_copyright(mrb_state *mrb) 45 | { 46 | printstr(mrb_const_get(mrb, mrb_obj_value(mrb->object_class), mrb_intern_lit(mrb, "MRUBY_COPYRIGHT")), stdout); 47 | } 48 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/src/value_array.h: -------------------------------------------------------------------------------- 1 | #ifndef MRB_VALUE_ARRAY_H__ 2 | #define MRB_VALUE_ARRAY_H__ 3 | 4 | #include 5 | 6 | static inline void 7 | value_move(mrb_value *s1, const mrb_value *s2, size_t n) 8 | { 9 | if (s1 > s2 && s1 < s2 + n) 10 | { 11 | s1 += n; 12 | s2 += n; 13 | while (n-- > 0) { 14 | *--s1 = *--s2; 15 | } 16 | } 17 | else if (s1 != s2) { 18 | while (n-- > 0) { 19 | *s1++ = *s2++; 20 | } 21 | } 22 | else { 23 | /* nothing to do. */ 24 | } 25 | } 26 | 27 | #endif /* MRB_VALUE_ARRAY_H__ */ 28 | -------------------------------------------------------------------------------- /GenS/Utils/mruby/mruby/src/version.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | void 5 | mrb_init_version(mrb_state* mrb) 6 | { 7 | mrb_value mruby_version = mrb_str_new_lit(mrb, MRUBY_VERSION); 8 | 9 | mrb_define_global_const(mrb, "RUBY_VERSION", mrb_str_new_lit(mrb, MRUBY_RUBY_VERSION)); 10 | mrb_define_global_const(mrb, "RUBY_ENGINE", mrb_str_new_lit(mrb, MRUBY_RUBY_ENGINE)); 11 | mrb_define_global_const(mrb, "RUBY_ENGINE_VERSION", mruby_version); 12 | mrb_define_global_const(mrb, "MRUBY_VERSION", mrb_str_new_lit(mrb, MRUBY_VERSION)); 13 | mrb_define_global_const(mrb, "MRUBY_RELEASE_NO", mrb_fixnum_value(MRUBY_RELEASE_NO)); 14 | mrb_define_global_const(mrb, "MRUBY_RELEASE_DATE", mrb_str_new_lit(mrb, MRUBY_RELEASE_DATE)); 15 | mrb_define_global_const(mrb, "MRUBY_DESCRIPTION", mrb_str_new_lit(mrb, MRUBY_DESCRIPTION)); 16 | mrb_define_global_const(mrb, "MRUBY_COPYRIGHT", mrb_str_new_lit(mrb, MRUBY_COPYRIGHT)); 17 | } 18 | -------------------------------------------------------------------------------- /GenS/Views/Cells/GSBottomLoadingCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSBottomLoadingCell.h 3 | // GenShelf 4 | // 5 | // Created by Gen on 16/3/14. 6 | // Copyright © 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef enum : NSUInteger { 12 | GSBottomCellStatusLoading, 13 | GSBottomCellStatusHasMore, 14 | GSBottomCellStatusNoMore, 15 | GSBottomCellStatusWhite, 16 | } GSBottomCellStatus; 17 | 18 | @interface GSBottomLoadingCell : UITableViewCell 19 | 20 | @property (nonatomic, readonly) UIActivityIndicatorView *indicatorView; 21 | @property (nonatomic, readonly) UILabel *titleLabel; 22 | @property (nonatomic, assign) GSBottomCellStatus status; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /GenS/Views/Cells/GSChapterCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSChapterCell.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/5/20. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSChapterCell : UICollectionViewCell 12 | 13 | @property (nonatomic, strong) UILabel *titleLabel; 14 | @property (nonatomic, strong) UIColor *color; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /GenS/Views/Cells/GSInputCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSInputCell.h 3 | // GenShelf 4 | // 5 | // Created by Gen on 16/2/17. 6 | // Copyright © 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSInputCell : UITableViewCell 12 | 13 | @property (nonatomic, readonly) UITextField *inputView; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Views/Cells/GSInputCell.m: -------------------------------------------------------------------------------- 1 | // 2 | // GSInputCell.m 3 | // GenShelf 4 | // 5 | // Created by Gen on 16/2/17. 6 | // Copyright © 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import "GSInputCell.h" 10 | 11 | @implementation GSInputCell 12 | 13 | @synthesize inputView = _inputView; 14 | 15 | - (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier { 16 | self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; 17 | if (self) { 18 | CGRect bounds = self.contentView.bounds; 19 | _inputView = [[UITextField alloc] initWithFrame:CGRectMake(bounds.size.width/2, 10, 20 | bounds.size.width/2-10, 21 | bounds.size.height-20)]; 22 | [_inputView setTextAlignment:NSTextAlignmentRight]; 23 | [_inputView setAutoresizingMask:UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight]; 24 | [self.contentView addSubview:_inputView]; 25 | self.selectionStyle = UITableViewCellSelectionStyleNone; 26 | } 27 | return self; 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /GenS/Views/Cells/GSProcessCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSProcessCell.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/9/3. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSProcessCell : UITableViewCell 12 | 13 | - (void)setBook:(void*)book chapter:(void*)chapter; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Views/Cells/GSSelectCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSSelectCell.h 3 | // GenShelf 4 | // 5 | // Created by Gen on 16-2-17. 6 | // Copyright (c) 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "GSSelectView.h" 11 | 12 | @class GSSelectCell; 13 | 14 | @protocol GSSelectCellDelegate 15 | 16 | - (void)selectCellChanged:(GSSelectCell *)cell; 17 | 18 | @end 19 | 20 | @interface GSSelectCell : UITableViewCell 21 | 22 | @property (nonatomic, readonly) UILabel *contentLabel; 23 | 24 | @property (nonatomic, strong) NSArray *options; 25 | @property (nonatomic, assign) NSInteger opetionSelected; 26 | @property (nonatomic, weak) id delegate; 27 | 28 | 29 | - (GSSelectView *)makePickView; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /GenS/Views/Cells/GSShopCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSShopCell.h 3 | // GenS 4 | // 5 | // Created by gen on 16/05/2017. 6 | // Copyright © 2017 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "GSRadiusImageView.h" 11 | 12 | @interface GSShopCell : UITableViewCell 13 | 14 | @property (nonatomic, readonly) GSRadiusImageView *thumView; 15 | @property (nonatomic, readonly) UILabel *titleLabel; 16 | @property (nonatomic, strong) NSString *content; 17 | 18 | @property (nonatomic, strong) NSString *imageUrl; 19 | @property (nonatomic, strong) UIView *badgeView; 20 | 21 | - (void)setImageUrl:(NSString *)imageUrl headers:(NSDictionary*)headers; 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /GenS/Views/Cells/GSSwitchCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSSwitchCell.h 3 | // GenShelf 4 | // 5 | // Created by Gen on 16/2/18. 6 | // Copyright © 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSSwitchCell : UITableViewCell 12 | 13 | @property (nonatomic,readonly) UISwitch *switchItem; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Views/Cells/GSSwitchCell.m: -------------------------------------------------------------------------------- 1 | // 2 | // GSSwitchCell.m 3 | // GenShelf 4 | // 5 | // Created by Gen on 16/2/18. 6 | // Copyright © 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import "GSSwitchCell.h" 10 | 11 | @implementation GSSwitchCell 12 | 13 | - (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier { 14 | self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; 15 | if (self) { 16 | CGRect bounds = self.contentView.bounds; 17 | _switchItem = [[UISwitch alloc] init]; 18 | CGRect frame = _switchItem.frame; 19 | _switchItem.frame = CGRectMake(bounds.size.width - frame.size.width - 10, 20 | (bounds.size.height - frame.size.height)/2, 21 | frame.size.width, 22 | frame.size.height); 23 | _switchItem.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin|UIViewAutoresizingFlexibleHeight; 24 | [self.contentView addSubview:_switchItem]; 25 | self.selectionStyle = UITableViewCellSelectionStyleNone; 26 | } 27 | return self; 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /GenS/Views/Widgets/GSBadgeView.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSBadgeView.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/7/4. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSBadgeView : UIView 12 | 13 | @property (nonatomic, strong) NSString *text; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/Views/Widgets/GSBadgeView.m: -------------------------------------------------------------------------------- 1 | // 2 | // GSBadgeView.m 3 | // GenS 4 | // 5 | // Created by mac on 2017/7/4. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import "GSBadgeView.h" 10 | #import "GlobalsDefine.h" 11 | 12 | @implementation GSBadgeView { 13 | UILabel *_label; 14 | } 15 | 16 | #define SIZE 18 17 | 18 | - (id)initWithFrame:(CGRect)frame { 19 | self = [super initWithFrame:CGRectMake(0, 0, SIZE, SIZE)]; 20 | if (self) { 21 | self.backgroundColor = RED_COLOR; 22 | self.layer.cornerRadius = SIZE/2; 23 | self.clipsToBounds = YES; 24 | 25 | _label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, SIZE, SIZE)]; 26 | [self addSubview:_label]; 27 | _label.textColor = [UIColor whiteColor]; 28 | _label.font = [UIFont systemFontOfSize:12]; 29 | _label.textAlignment = NSTextAlignmentCenter; 30 | _label.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; 31 | } 32 | return self; 33 | } 34 | 35 | - (void)setText:(NSString *)text { 36 | _label.text = text; 37 | CGSize size = [_label sizeThatFits:CGSizeMake(999, 999)]; 38 | CGSize sizeToSet = CGSizeMake(MAX(SIZE, size.width), SIZE); 39 | CGRect bounds = self.frame; 40 | bounds.size = sizeToSet; 41 | self.frame = bounds; 42 | } 43 | 44 | @end 45 | -------------------------------------------------------------------------------- /GenS/Views/Widgets/GSCoverSelectView.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSCoverSelectView.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/5/22. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class GSCoverSelectView; 12 | 13 | @protocol GSCoverSelectViewDelegate 14 | 15 | - (void)coverSelectView:(GSCoverSelectView *)view selected:(NSInteger)index; 16 | - (void)coverSelectViewMiss:(GSCoverSelectView *)view; 17 | 18 | @end 19 | 20 | @interface GSCoverSelectView : UIView 21 | 22 | @property (nonatomic, strong) NSArray *params; 23 | @property (nonatomic, assign) NSInteger selected; 24 | @property (nonatomic, weak) id delegate; 25 | 26 | - (void)show; 27 | - (void)miss; 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /GenS/Views/Widgets/GSDragView.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSDragView.h 3 | // GenS 4 | // 5 | // Created by gen on 23/06/2017. 6 | // Copyright © 2017 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class GSDragView; 12 | 13 | @interface GSDragViewCell : UIScrollView 14 | 15 | @property (nonatomic, strong) UIImage *image; 16 | 17 | @end 18 | 19 | @protocol GSDragViewDelegate 20 | 21 | - (NSInteger)dragViewCellCount:(GSDragView *)dragView; 22 | - (GSDragViewCell *)dragView:(GSDragView *)dragView atIndex:(NSInteger)index; 23 | - (void)dragView:(GSDragView *)dragView page:(NSInteger)index; 24 | 25 | - (void)dragView:(GSDragView *)dragView chapter:(BOOL)next; 26 | 27 | @end 28 | 29 | @interface GSDragView : UIView 30 | 31 | @property (nonatomic, weak) id delegate; 32 | @property (nonatomic, assign) NSInteger maxLimit; 33 | @property (nonatomic, assign) NSInteger pageIndex; 34 | @property (nonatomic, readonly) UIScrollView *scrollView; 35 | 36 | - (GSDragViewCell *)dequeueCell; 37 | - (void)reloadData; 38 | - (void)reloadCount; 39 | 40 | - (void)setPageIndex:(NSInteger)pageIndex animate:(BOOL)animate; 41 | 42 | - (GSDragViewCell *)cellAtIndex:(NSInteger)index; 43 | 44 | @end 45 | -------------------------------------------------------------------------------- /GenS/Views/Widgets/GSLoadingView.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSLoadingView.h 3 | // GenS 4 | // 5 | // Created by gen on 18/05/2017. 6 | // Copyright © 2017 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSLoadingView : UIView 12 | 13 | - (UIButton*)button; 14 | 15 | @property (nonatomic, readonly) BOOL display; 16 | 17 | - (void)start; 18 | - (void)stop; 19 | - (void)failed; 20 | - (void)miss; 21 | - (void)message:(NSString *)label button:(NSString *)button; 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /GenS/Views/Widgets/GSPartView.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSPartView.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/5/17. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class GSPartView; 12 | 13 | @protocol GSPartDelegate 14 | 15 | - (void)partView:(GSPartView *)partView select:(NSInteger)index; 16 | 17 | @end 18 | 19 | @interface GSPartView : UIView 20 | 21 | @property (nonatomic, weak) id delegate; 22 | @property (nonatomic, assign) NSInteger selected; 23 | 24 | - (id)initWithLabels:(NSArray *)labels; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /GenS/Views/Widgets/GSPictureCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSPictureCell.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/6/24. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import "GSDragView.h" 10 | #import "GSMemCache.h" 11 | 12 | @interface GSPictureCell : GSDragViewCell 13 | 14 | @property (nonatomic, strong) NSString *imagePath; 15 | @property (nonatomic, strong) GSMemCache *memCache; 16 | 17 | - (void)setPage:(void*)page; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /GenS/Views/Widgets/GSRadiusImageView.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIRadisImageView.h 3 | // GenShelf 4 | // 5 | // Created by Gen on 16/2/23. 6 | // Copyright © 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSRadiusImageView : UIView 12 | 13 | @property (nonatomic, readonly) UIImageView *imageView; 14 | @property (nonatomic, strong) UIImage *image; 15 | @property (nonatomic, assign) CGFloat radius; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /GenS/Views/Widgets/GSSelectView.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSSelectView.h 3 | // GenShelf 4 | // 5 | // Created by Gen on 16/2/18. 6 | // Copyright © 2016年 AirRaidClub. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSSelectView : UIView 12 | 13 | @property (nonatomic, readonly) UIPickerView *pickerView; 14 | @property (nonatomic, readonly) UIToolbar *toolBar; 15 | 16 | - (void)show; 17 | - (void)miss; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /GenS/Views/Widgets/GSTitleInnerButton.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSTitleInnerButton.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/6/24. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface GSTitleInnerButton : UIButton { 12 | UIImageView *_triView; 13 | } 14 | 15 | - (void)extend:(BOOL)ex; 16 | - (void)updateTriPosition; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /GenS/Views/Widgets/GSWidgetButton.h: -------------------------------------------------------------------------------- 1 | // 2 | // GSWidgetButton.h 3 | // GenS 4 | // 5 | // Created by mac on 2017/9/3. 6 | // Copyright © 2017年 gen. All rights reserved. 7 | // 8 | 9 | #import "MTPaddyButton.h" 10 | 11 | @interface GSWidgetButton : MTPaddyButton 12 | 13 | @property (nonatomic, strong) UIImage *iconImage; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /GenS/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* 2 | InfoPlist.strings 3 | GenShelf 4 | 5 | Created by Gen on 16/3/16. 6 | Copyright © 2016年 AirRaidClub. All rights reserved. 7 | */ 8 | 9 | CFBundleDisplayName = "GenLibrary"; -------------------------------------------------------------------------------- /GenS/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // GenS 4 | // 5 | // Created by gen on 16/05/2017. 6 | // Copyright © 2017 gen. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /GenS/nl_define.h: -------------------------------------------------------------------------------- 1 | // 2 | // SO3Util.h 3 | // CardboardSDK-iOS 4 | // 5 | 6 | #include 7 | 8 | #ifdef __NAMESPACE__ 9 | #undef __NAMESPACE__ 10 | #endif 11 | 12 | #define __NAMESPACE__ "nl" 13 | -------------------------------------------------------------------------------- /GenS/zh-Hans.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* 2 | InfoPlist.strings 3 | GenShelf 4 | 5 | Created by Gen on 16/3/16. 6 | Copyright © 2016年 AirRaidClub. All rights reserved. 7 | */ 8 | 9 | CFBundleDisplayName = "绅士的书架"; -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## GenShelf 2 | 3 | 绅士的书架是一款看漫画的软件. [http://66m.vc/genshelf/](http://66m.vc/genshelf/) 4 | 5 | 目的是让大家能够更好的在手机设备上观看漫画。 6 | 7 | ## 编译 8 | 9 | 先在解压GenS/hirender/libhirender.a.zip,然后打开GenS.xcodeproj运行就行。 10 | 11 | ## 关于藏书馆 12 | 13 | 允许有兴趣的绅士自由开发藏书馆并且上传到软件里面的。 14 | 15 | 藏书馆项目在这里:[GenShelf_Packages](https://github.com/dbsGen/GenShelf_Packages) 16 | 17 | 你只需要拉下来修改一下上传你写好的zip包,然后push request就行了。 18 | 19 | 不过有几点希望大家能够遵守,因为是为了获得更好的观看体验,所以对已经有移动端的书店就尽量不要加入进来了。 20 | 另外必须遵守GPL许可协议。 21 | 22 | ## License 23 | 24 | 本软件采用GPL许可证。 25 | --------------------------------------------------------------------------------