NSNumber *getValue(void) {
return nil;
}
//GNU extension "?:" is the ?? analog:
//takes the left side when it is not nil
NSNumber *n = getValue() ?: @(-1);
int value = n.intValue;
//value is -1
//is equal to
NSNumber *raw = getValue();
value = (raw != nil ? raw : @(-1)).intValue;
//value is -1