2019-11-14 23:27:44 +04:00

27 lines
1.0 KiB
Objective-C

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
typedef enum {
NSObjectAssociationPolicyRetain = 0,
NSObjectAssociationPolicyCopy = 1
} NSObjectAssociationPolicy;
@interface RuntimeUtils : NSObject
+ (void)swizzleInstanceMethodOfClass:(Class)targetClass currentSelector:(SEL)currentSelector newSelector:(SEL)newSelector;
+ (void)swizzleInstanceMethodOfClass:(Class)targetClass currentSelector:(SEL)currentSelector withAnotherClass:(Class)anotherClass newSelector:(SEL)newSelector;
+ (void)swizzleClassMethodOfClass:(Class)targetClass currentSelector:(SEL)currentSelector newSelector:(SEL)newSelector;
+ (CALayer * _Nonnull)makeLayerHostCopy:(CALayer * _Nonnull)another;
@end
@interface NSObject (AssociatedObject)
- (void)setAssociatedObject:(id)object forKey:(void const *)key;
- (void)setAssociatedObject:(id)object forKey:(void const *)key associationPolicy:(NSObjectAssociationPolicy)associationPolicy;
- (id)associatedObjectForKey:(void const *)key;
- (bool)checkObjectIsKindOfClass:(Class)targetClass;
- (void)setClass:(Class)newClass;
@end