diff --git a/FSCalendar.podspec b/FSCalendar.podspec index 837b9b9..598ef11 100644 --- a/FSCalendar.podspec +++ b/FSCalendar.podspec @@ -1,7 +1,7 @@ Pod::Spec.new do |s| s.name = "FSCalendar" - s.version = "2.5.0" + s.version = "2.5.1" s.summary = "A superiorly awesome iOS7+ calendar control, compatible with Objective-C and Swift." s.homepage = "https://github.com/WenchaoD/FSCalendar" diff --git a/FSCalendar/FSCalendarExtensions.h b/FSCalendar/FSCalendarExtensions.h index 44d2d2c..622b09c 100644 --- a/FSCalendar/FSCalendarExtensions.h +++ b/FSCalendar/FSCalendarExtensions.h @@ -60,6 +60,10 @@ NS_ASSUME_NONNULL_BEGIN - (void)fs_setVariable:(id)variable forKey:(NSString *)key; - (id)fs_variableForKey:(NSString *)key; + +- (void)fs_setUnsignedIntegerVariable:(NSUInteger)value forKey:(NSString *)key; +- (NSUInteger)fs_unsignedIntegerVariableForKey:(NSString *)key; + - (id)fs_performSelector:(SEL)selector withObjects:(nullable id)firstObject, ... NS_REQUIRES_NIL_TERMINATION; @end diff --git a/FSCalendar/FSCalendarExtensions.m b/FSCalendar/FSCalendarExtensions.m index 466a5b8..6db05eb 100644 --- a/FSCalendar/FSCalendarExtensions.m +++ b/FSCalendar/FSCalendarExtensions.m @@ -257,6 +257,21 @@ return variable; } +- (void)fs_setUnsignedIntegerVariable:(NSUInteger)value forKey:(NSString *)key +{ + Ivar ivar = class_getInstanceVariable([self class], key.UTF8String); + ((void (*)(id, Ivar, NSUInteger))object_setIvar)(self, ivar, value); +} + +- (NSUInteger)fs_unsignedIntegerVariableForKey:(NSString *)key +{ + Ivar ivar = class_getInstanceVariable([self class], key.UTF8String); + ptrdiff_t offset = ivar_getOffset(ivar); + unsigned char *bytes = (unsigned char *)(__bridge void*)self; + NSUInteger value = *((NSUInteger *)(bytes+offset)); + return value; +} + - (id)fs_performSelector:(SEL)selector withObjects:(nullable id)firstObject, ... { if (!selector) return nil; diff --git a/FSCalendar/Info.plist b/FSCalendar/Info.plist index fae982c..3c8acdf 100644 --- a/FSCalendar/Info.plist +++ b/FSCalendar/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 2.5.0 + 2.5.1 CFBundleSignature ???? CFBundleVersion