This is RiskNeighbor.m in view mode; [Download] [Up]
// // This file is a part of Risk by Mike Ferris. // #import "Risk.h" RCSID ("$Id: RiskNeighbor.m,v 1.2 1997/12/15 07:44:08 nygard Exp $"); #import "RiskNeighbor.h" #import "Country.h" #import "NSObjectExtensions.h" //====================================================================== // A RiskNeighbor represents two neighboring countries in a world. // They are not directly encoded in a stream -- instead, their names // are stored and then new instances are created after looking up // the countries based on their names. //====================================================================== #define RiskNeighbor_VERSION 1 @implementation RiskNeighbor + (void) initialize { if (self == [RiskNeighbor class]) { [self setVersion:RiskNeighbor_VERSION]; } } //---------------------------------------------------------------------- + riskNeighborWithCountries:(Country *)firstCountry:(Country *)secondCountry { return [[[RiskNeighbor alloc] initWithCountries:firstCountry:secondCountry] autorelease]; } //---------------------------------------------------------------------- - initWithCountries:(Country *)firstCountry:(Country *)secondCountry { if ([super init] == nil) return nil; country1 = [firstCountry retain]; country2 = [secondCountry retain]; return self; } //---------------------------------------------------------------------- - (void) dealloc { SNRelease (country1); SNRelease (country2); [super dealloc]; } //---------------------------------------------------------------------- - (Country *) country1 { return country1; } //---------------------------------------------------------------------- - (Country *) country2 { return country2; } //---------------------------------------------------------------------- - (NSString *) description { return [NSString stringWithFormat:@"<RiskNeighbor: country1 = %@, country2 = %@>", country1, country2]; } @end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.