OSDN Git Service

NSCopyingに準拠
authormasakih <masakih@users.sourceforge.jp>
Wed, 16 Mar 2016 14:51:11 +0000 (23:51 +0900)
committermasakih <masakih@users.sourceforge.jp>
Wed, 16 Mar 2016 14:51:11 +0000 (23:51 +0900)
KCD/HMEnhancementListItem.h
KCD/HMEnhancementListItem.m

index 4963e16..7ae1494 100644 (file)
@@ -38,7 +38,7 @@ typedef NS_ENUM(NSUInteger, EquipmentType) {
 @end
 
 
-@interface HMRequiredEquipmentSet : NSObject <NSCoding>
+@interface HMRequiredEquipmentSet : NSObject <NSCoding, NSCopying>
 
 @property (copy, nonatomic) NSString *identifire;
 
@@ -53,7 +53,7 @@ typedef NS_ENUM(NSUInteger, EquipmentType) {
 @end
 
 
-@interface HMEnhancementListItem : NSObject <NSCoding>
+@interface HMEnhancementListItem : NSObject <NSCoding, NSCopying>
 
 @property (copy, nonatomic) NSString *identifire;
 
index ee23351..24afaf5 100644 (file)
        [aCoder encodeObject:self.requiredEquipments forKey:@"requiredEquipments"];
 }
 
+- (instancetype)copyWithZone:(NSZone *)zone
+{
+       HMRequiredEquipmentSet *obj = [HMRequiredEquipmentSet new];
+       obj.identifire = self.identifire;
+       obj.requiredEquipments = self.requiredEquipments;
+       
+       return obj;
+}
+
 - (id)description
 {
        return [NSString stringWithFormat:@"{identifier = %@,\nrequiredEquipments = %@\n}", _identifire, _requiredEquipments];
        [aCoder encodeObject:self.requiredEquipments forKey:@"requiredEquipments"];
        [aCoder encodeObject:self.secondsShipNames forKey:@"secondsShipNames"];
 }
+- (instancetype)copyWithZone:(NSZone *)zone
+{
+       HMEnhancementListItem *obj = [HMEnhancementListItem new];
+       obj.identifire = self.identifire;
+       obj.weekday = self.weekday;
+       obj.equipmentType = self.equipmentType;
+       obj.targetEquipment = self.targetEquipment;
+       obj.remodelEquipment = self.remodelEquipment;
+       obj.requiredEquipments = [self.requiredEquipments copy];
+       obj.secondsShipNames = [self.secondsShipNames copy];
+       
+       return obj;
+}
 
 - (id)description
 {