4 "summary": "like js promise.",
5 "description": "SJPromise.promise(^(SJPromiseContinuation * _Nonnull complete) { // task 1\n dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{\n // resolve\n complete.resolve(@(1));\n // or reject\n // complete.reject([NSError errorWithXXX]);\n });\n}).then(^SJPromiseReturnValue _Nullable(id _Nullable value) { // task 2\n return xxx; // or return SJPromise.promise(...);\n}).catch(^SJPromiseReturnValue _Nullable(NSError * _Nonnull error) { // catch error\n return xxx; // or return SJPromise.promise(...);\n}).finally(^{\n NSLog(@\"任务结束\");\n});",
6 "homepage": "https://github.com/changsanjiang/SJPromise",
12 "changsanjiang": "changsanjiang@gmail.com"
18 "git": "https://github.com/changsanjiang/SJPromise.git",
21 "source_files": "lib/**/*.{h,m}"