1 //--------------------------------------------------------------------------------------- 2 // $Id$ 3 // Copyright (c) 2009-2010 by Mulle Kybernetik. See License file for details. 4 //--------------------------------------------------------------------------------------- 5 6 #import <Foundation/Foundation.h> 7 8 @interface OCMArg : NSObject 9 10 // constraining arguments 11 12 + (id)any; 13 + (void *)anyPointer; 14 + (id)isNil; 15 + (id)isNotNil; 16 + (id)isNotEqual:(id)value; 17 + (id)checkWithSelector:(SEL)selector onObject:(id)anObject; 18 #if NS_BLOCKS_AVAILABLE 19 + (id)checkWithBlock:(BOOL (^)(id))block; 20 #endif 21 22 // manipulating arguments 23 24 + (id *)setTo:(id)value; 25 26 // internal use only 27 28 + (id)resolveSpecialValues:(NSValue *)value; 29 30 @end 31 32 #define OCMOCK_ANY [OCMArg any] 33 #define OCMOCK_VALUE(variable) [NSValue value:&variable withObjCType:@encode(__typeof__(variable))] 34