The general rule is: 1. If it is considered a programming error, raise an exception (or assert -- it is the same) 2. If it is normal code flow, then don't log or do anything strange.
However, in general, it is troublesome to have init's return nil. corbin On Apr 4, 2012, at 4:38 AM, Ariel Feinerman <arielfap...@gmail.com> wrote: > Hi, > > I think the question was asked and answered but I cannot see a clearance > what is the right way to write init in the cases the arguments are nil or > wrong? > Returning a nil or raising an exception? > > - (id) initWithURL: (NSURL *) url { > > > if ((self = [super init])) { > > if (!url) { > > // ? > > } > > if (![url isFileURL]) { > > // ? > > } > > } > > return self; > > } > > I can frequently see the following in init > > NSAssert(url, @"url may not be nil", ); > > -- > best regards > Ariel > _______________________________________________ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/corbind%40apple.com > > This email sent to corb...@apple.com _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com