Object serialization: Difference between revisions

Content added Content deleted
(Omitted Mathematica)
Line 1,132: Line 1,132:
{
{
if ((self = [super init])) {
if ((self = [super init])) {
animalName = [name retain];
animalName = name;
numberOfLegs = legs;
numberOfLegs = legs;
}
}
Line 1,147: Line 1,147:
[coder encodeInt: numberOfLegs forKey: @"Animal.legs"];
[coder encodeInt: numberOfLegs forKey: @"Animal.legs"];
}
}
- (id) initWithCoder: (NSCoder*)coder
- (instancetype) initWithCoder: (NSCoder*)coder
{
{
if ((self = [super init])) {
if ((self = [super init])) {
animalName = [[coder decodeObjectForKey: @"Animal.name"] retain];
animalName = [coder decodeObjectForKey: @"Animal.name"];
numberOfLegs = [coder decodeIntForKey: @"Animal.legs"];
numberOfLegs = [coder decodeIntForKey: @"Animal.legs"];
}
}
Line 1,203: Line 1,203:
[coder encodeObject: eatenList forKey: @"Mammal.eaten"];
[coder encodeObject: eatenList forKey: @"Mammal.eaten"];
}
}
- (id) initWithCoder: (NSCoder*)coder
- (instancetype) initWithCoder: (NSCoder*)coder
{
{
if ((self = [super initWithCoder: coder])) {
if ((self = [super initWithCoder: coder])) {