Skip to content

Instantly share code, notes, and snippets.

@kristopherjohnson
Last active January 19, 2021 02:52
Show Gist options
  • Save kristopherjohnson/4b6edb5903d41d942323 to your computer and use it in GitHub Desktop.
Save kristopherjohnson/4b6edb5903d41d942323 to your computer and use it in GitHub Desktop.
DLog/ALog/ULog macros for Objective-C, from http://overbythere.co.uk/blog/2012/01/alternatives-nslog
// Original source for DLog/ALog/ULog: http://overbythere.co.uk/blog/2012/01/alternatives-nslog
// Log in DEBUG build only
#ifdef DEBUG
# define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);
#else
# define DLog(...)
#endif
// Always log
#define ALog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);
// Display UIAlert in DEBUG build only
#ifdef DEBUG
# define ULog(fmt, ...) { UIAlertView *alert = [[UIAlertView alloc] initWithTitle:[NSString stringWithFormat:@"%s\n [Line %d] ", __PRETTY_FUNCTION__, __LINE__] message:[NSString stringWithFormat:fmt, ##__VA_ARGS__] delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil]; [alert show]; }
#else
# define ULog(...)
#endif
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment