text: //
  //  ARGCD.h
  //  ARReader
  //
  //  Created by Objective-C on 2017/2/23.
  //  Copyright © 2017年 Archy Van. All rights reserved.
  //
  
  #ifndef ARGCD_h
  #define ARGCD_h
  
  #import "ARGCDGroup.h"
  #import "ARGCDQueue.h"
  #import "ARGCDSemaphore.h"
  #import "ARGCDTimer.h"
  
  #ifndef weakify
  #if DEBUG
  #if __has_feature(objc_arc)
  #define weakify(object) autoreleasepool{} __weak __typeof__(object) weak##_##object = object;
  #else
  #define weakify(object) autoreleasepool{} __block __typeof__(object) block##_##object = object;
  #endif
  #else
  #if __has_feature(objc_arc)
  #define weakify(object) try{} @finally{} {} __weak __typeof__(object) weak##_##object = object;
  #else
  #define weakify(object) try{} @finally{} {} __block __typeof__(object) block##_##object = object;
  #endif
  #endif
  #endif
  
  #ifndef strongify
  #if DEBUG
  #if __has_feature(objc_arc)
  #define strongify(object) autoreleasepool{} __typeof__(object) object = weak##_##object;
  #else
  #define strongify(object) autoreleasepool{} __typeof__(object) object = block##_##object;
  #endif
  #else
  #if __has_feature(objc_arc)
  #define strongify(object) try{} @finally{} __typeof__(object) object = weak##_##object;
  #else
  #define strongify(object) try{} @finally{} __typeof__(object) object = block##_##object;
  #endif
  #endif
  #endif
  
  
  #endif /* ARGCD_h */
  