With.h
author Jens Alfke <jens@mooseyard.com>
Wed Sep 02 08:41:25 2009 -0700 (2009-09-02)
changeset 35 5cab3034d3a1
permissions -rw-r--r--
10.6 compatibility: Fix some new compiler warnings, and work around apparent regressions in NSTask and -stringByStandardizingPath.
     1 //
     2 //  With.h
     3 //  MYUtilities
     4 //
     5 //  Copyright 2008 Jens Alfke. All rights reserved.
     6 //
     7 
     8 #import <Cocoa/Cocoa.h>
     9 
    10 
    11 #define WITH(OBJ)       id __with=[OBJ beginWith]; @try
    12 
    13 #define ENDWITH         @finally{[__with endWith];}
    14 #define CATCHWITH       @catch(NSException *x){id w=__with; __with=nil; _catchWith(w,x);} @finally{[__with endWith];}
    15 
    16 void _catchWith( id with, NSException *x );
    17 
    18 @interface NSAutoreleasePool (With)
    19 + (NSAutoreleasePool*) beginWith;
    20 - (void) endWith;
    21 @end