summaryrefslogtreecommitdiffstats
path: root/debian/uncrustify-trinity/uncrustify-trinity-0.75.0/tests/input/oc/complex_method.m
blob: b22c34b6b497269ef1c6765e8652a5b0cc33ee8c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Turn the document contents into a single savable lump of data
- (NSData *)dataOfType:(NSString *)typeName error:(NSError **)outError {
#pragma unused(typeName)
    
    // Produce the data lump:
    NSData * retval = [NSKeyedArchiver archivedDataWithRootObject:model];
    
    // If the lump is nil something went wrong
    // fill out the error object to explain what wrent wrong
    if ( outError != NULL ) {
        // The sender wanted an error reported. If there
        // was a problem, fill in an NSError object
        if (retval == nil) {
            // The error object should include an (unhelpful) 
            // explanation of what happened
            NSDictionary * userInfoDict = [NSDictionary dictionaryWithObjectsAndKeys:
                                               @"Internal error formatting data", NSLocalizedDescriptionKey, 
                                               @"Archiving of data failed. Probably a bug.", NSLocalizedFailureReasonErrorKey, 
                                               @"There's nothing you can do.", NSLocalizedRecoverySuggestionErrorKey, nil];
            
            *outError = [NSError errorWithDomain:LinearInternalErrorDomain
                                                code:linErrCantFormatDocumentData 
                                                userInfo:userInfoDict];
        } else {
            // No problem. Don't supply an error object.
            *outError = nil;
        }
	}
	return retval;
}