├── .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 | 
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 |
--------------------------------------------------------------------------------