Overview
Comment: | bridge: Add bridge for {OF,NS}Number |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
82f1f432a48b824f3cf17fd5b7bf87f5 |
User & Date: | js on 2019-06-19 23:01:20 |
Other Links: | manifest | tags |
Context
2019-06-20
| ||
23:36 | Document methods to override in class clusters check-in: d537543238 user: js tags: trunk | |
2019-06-19
| ||
23:01 | bridge: Add bridge for {OF,NS}Number check-in: 82f1f432a4 user: js tags: trunk | |
01:19 | bridge: Add -[{OF,NS}Object] to {NS,OF}Enumerator check-in: d23d6802cc user: js tags: trunk | |
Changes
Modified src/bridge/Makefile from [05c9fe9398] to [b9279e9d57].
︙ | ︙ | |||
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | LIB_MAJOR = ${OBJFW_LIB_MAJOR} LIB_MINOR = ${OBJFW_LIB_MINOR} SRCS = OFArray+NSObject.m \ OFEnumerator+NSObject.m \ OFException+Swift.m \ OFDictionary+NSObject.m \ OFString+NSObject.m \ NSArray+OFObject.m \ NSDictionary+OFObject.m \ NSEnumerator+OFObject.m \ NSString+OFObject.m INCLUDES := ${SRCS:.m=.h} \ NSBridging.h \ OFBridging.h \ ObjFWBridge.h | > > | 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | LIB_MAJOR = ${OBJFW_LIB_MAJOR} LIB_MINOR = ${OBJFW_LIB_MINOR} SRCS = OFArray+NSObject.m \ OFEnumerator+NSObject.m \ OFException+Swift.m \ OFDictionary+NSObject.m \ OFNumber+NSObject.m \ OFString+NSObject.m \ NSArray+OFObject.m \ NSDictionary+OFObject.m \ NSEnumerator+OFObject.m \ NSNumber+OFObject.m \ NSString+OFObject.m INCLUDES := ${SRCS:.m=.h} \ NSBridging.h \ OFBridging.h \ ObjFWBridge.h |
︙ | ︙ |
Added src/bridge/NSNumber+OFObject.h version [12c1c82c36].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | /* * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, * 2018, 2019 * Jonathan Schleifer <js@heap.zone> * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE.QPL included in * the packaging of this file. * * Alternatively, it may be distributed under the terms of the GNU General * Public License, either version 2 or 3, which can be found in the file * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this * file. */ #import <Foundation/NSValue.h> #import "NSBridging.h" OF_ASSUME_NONNULL_BEGIN @class OFNumber; #ifdef __cplusplus extern "C" { #endif extern int _NSNumber_OFObject_reference; #ifdef __cplusplus } #endif /*! * @category NSNumber (OFObject) * NSNumber+OFObject.h ObjFWBridge/NSNumber+OFObject.h * * @brief Support for bridging NSNumbers to OFNumbers. */ @interface NSNumber (OFObject) <NSBridging> @property (readonly, nonatomic) OFNumber *OFObject; @end OF_ASSUME_NONNULL_END |
Added src/bridge/NSNumber+OFObject.m version [bf48740484].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | /* * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, * 2018, 2019 * Jonathan Schleifer <js@heap.zone> * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE.QPL included in * the packaging of this file. * * Alternatively, it may be distributed under the terms of the GNU General * Public License, either version 2 or 3, which can be found in the file * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this * file. */ #import "NSNumber+OFObject.h" #import "OFNumber.h" #import "OFInvalidArgumentException.h" int _NSNumber_OFObject_reference; @implementation NSNumber (OFObject) - (id)OFObject { const char *type = self.objCType; if (strcmp(type, "c") == 0) return [OFNumber numberWithChar: self.charValue]; else if (strcmp(type, "C") == 0) return [OFNumber numberWithUnsignedChar: self.unsignedCharValue]; else if (strcmp(type, "s") == 0) return [OFNumber numberWithShort: self.shortValue]; else if (strcmp(type, "S") == 0) return [OFNumber numberWithUnsignedShort: self.unsignedShortValue]; else if (strcmp(type, "i") == 0) return [OFNumber numberWithInt: self.intValue]; else if (strcmp(type, "I") == 0) return [OFNumber numberWithUnsignedInt: self.unsignedIntValue]; else if (strcmp(type, "l") == 0) return [OFNumber numberWithLong: self.longValue]; else if (strcmp(type, "L") == 0) return [OFNumber numberWithUnsignedLong: self.unsignedLongValue]; else if (strcmp(type, "q") == 0) return [OFNumber numberWithLongLong: self.longLongValue]; else if (strcmp(type, "Q") == 0) return [OFNumber numberWithUnsignedLongLong: self.unsignedLongLongValue]; else if (strcmp(type, "f") == 0) return [OFNumber numberWithFloat: self.floatValue]; else if (strcmp(type, "d") == 0) return [OFNumber numberWithDouble: self.doubleValue]; @throw [OFInvalidArgumentException exception]; } @end |
Added src/bridge/OFNumber+NSObject.h version [9b09b0679b].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | /* * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, * 2018, 2019 * Jonathan Schleifer <js@heap.zone> * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE.QPL included in * the packaging of this file. * * Alternatively, it may be distributed under the terms of the GNU General * Public License, either version 2 or 3, which can be found in the file * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this * file. */ #ifdef OF_BRIDGE_LOCAL_INCLUDES # import "OFNumber.h" #else # if defined(__has_feature) && __has_feature(modules) @import ObjFW; # else # import <ObjFW/OFNumber.h> # endif #endif #import "OFBridging.h" OF_ASSUME_NONNULL_BEGIN #ifdef __cplusplus extern "C" { #endif extern int _OFNumber_NSObject_reference; #ifdef __cplusplus } #endif /*! * @category OFNumber (NSObject) \ * OFNumber+NSObject.h ObjFWBridge/OFNumber+NSObject.h * * @brief Support for bridging OFNumbers to NSNumbers. */ @interface OFNumber (NSObject) <OFBridging> @property (readonly, nonatomic) NSNumber *NSObject; @end OF_ASSUME_NONNULL_END |
Added src/bridge/OFNumber+NSObject.m version [0161e5988b].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | /* * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, * 2018, 2019 * Jonathan Schleifer <js@heap.zone> * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE.QPL included in * the packaging of this file. * * Alternatively, it may be distributed under the terms of the GNU General * Public License, either version 2 or 3, which can be found in the file * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this * file. */ #import <Foundation/NSValue.h> #import "OFNumber+NSObject.h" #import "OFInvalidArgumentException.h" int _OFNumber_NSObject_reference; @implementation OFNumber (NSObject) - (id)NSObject { const char *type = self.objCType; if (strcmp(type, "B") == 0) return [NSNumber numberWithBool: self.boolValue]; else if (strcmp(type, "c") == 0) return [NSNumber numberWithChar: self.charValue]; else if (strcmp(type, "C") == 0) return [NSNumber numberWithUnsignedChar: self.unsignedCharValue]; else if (strcmp(type, "s") == 0) return [NSNumber numberWithShort: self.shortValue]; else if (strcmp(type, "S") == 0) return [NSNumber numberWithUnsignedShort: self.unsignedShortValue]; else if (strcmp(type, "i") == 0) return [NSNumber numberWithInt: self.intValue]; else if (strcmp(type, "I") == 0) return [NSNumber numberWithUnsignedInt: self.unsignedIntValue]; else if (strcmp(type, "l") == 0) return [NSNumber numberWithLong: self.longValue]; else if (strcmp(type, "L") == 0) return [NSNumber numberWithUnsignedLong: self.unsignedLongValue]; else if (strcmp(type, "q") == 0) return [NSNumber numberWithLongLong: self.longLongValue]; else if (strcmp(type, "Q") == 0) return [NSNumber numberWithUnsignedLongLong: self.unsignedLongLongValue]; else if (strcmp(type, "f") == 0) return [NSNumber numberWithFloat: self.floatValue]; else if (strcmp(type, "d") == 0) return [NSNumber numberWithDouble: self.doubleValue]; @throw [OFInvalidArgumentException exception]; } @end |
Modified src/bridge/ObjFWBridge.h from [235870b2b1] to [5613e41fd6].
︙ | ︙ | |||
13 14 15 16 17 18 19 20 21 22 23 24 25 | * Public License, either version 2 or 3, which can be found in the file * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this * file. */ #import "NSArray+OFObject.h" #import "NSDictionary+OFObject.h" #import "NSString+OFObject.h" #import "OFArray+NSObject.h" #import "OFException+Swift.h" #import "OFDictionary+NSObject.h" #import "OFString+NSObject.h" | > > > > | 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | * Public License, either version 2 or 3, which can be found in the file * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this * file. */ #import "NSArray+OFObject.h" #import "NSDictionary+OFObject.h" #import "NSEnumerator+OFObject.h" #import "NSNumber+OFObject.h" #import "NSString+OFObject.h" #import "OFArray+NSObject.h" #import "OFException+Swift.h" #import "OFDictionary+NSObject.h" #import "OFEnumerator+NSObject.h" #import "OFNumber+NSObject.h" #import "OFString+NSObject.h" |