Code Search for Developers
 
 
  

nsenumerate.h from redshed at Krugle


Show nsenumerate.h syntax highlighted

/****************************************************************************************
	nsenumerate.h $Revision: 1.0 $
	
	Copyright (c) 2003 Red Shed Software. All rights reserved.
	by Jonathan 'Wolf' Rentzsch (jon at redshed dot net)
	
	Wed Oct 8 2003 wolf: Created.
	
	************************************************************************************/

#import <Foundation/Foundation.h>

#define nsenumerate_getEnumerator( TYPE, OBJ )				\
	(TYPE)([OBJ isKindOfClass:[NSEnumerator class]]			\
	? OBJ													\
	: [OBJ performSelector:@selector(objectEnumerator)])

#define	nsenumerate( CONTAINER, ITERATOR_TYPE, ITERATOR_SYMBOL )			\
for( ITERATOR_TYPE															\
	 *enumerator = nsenumerate_getEnumerator(ITERATOR_TYPE*, CONTAINER),	\
	 *ITERATOR_SYMBOL = [((NSEnumerator*) enumerator) nextObject];			\
	 ITERATOR_SYMBOL != nil;												\
	 ITERATOR_SYMBOL = [((NSEnumerator*) enumerator) nextObject] )

#define	nsenumerat( CONTAINER, ITERATOR_SYMBOL )					\
for( id																\
	 enumerator = nsenumerate_getEnumerator(id, CONTAINER),			\
	 ITERATOR_SYMBOL = [((NSEnumerator*) enumerator) nextObject];	\
	 ITERATOR_SYMBOL != nil;										\
	 ITERATOR_SYMBOL = [((NSEnumerator*) enumerator) nextObject] )




See more files for this project here

redshed

Code for Mac+WebObjects.

Project homepage: http://sourceforge.net/projects/redshed
Programming language(s): C,Java,Objective C
License: other

  BoundNSTableViewDragAndDropDataSource.xcodeproj/
    project.pbxproj
    wolf.mode1
    wolf.pbxuser
  English.lproj/
    MainMenu.nib/
      classes.nib
      info.nib
      keyedobjects.nib
    InfoPlist.strings
  AppController.h
  AppController.m
  BoundNSTableViewDragAndDropDataSource.h
  BoundNSTableViewDragAndDropDataSource.m
  BoundNSTableViewDragAndDropDataSource_Prefix.pch
  Info.plist
  main.m
  nsenumerate.h