/usr/include/GNUstep/Foundation/NSError.h is in libgnustep-base-dev 1.24.9-3.1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 | /** Interface for NSError for GNUStep
Copyright (C) 2004,2006 Free Software Foundation, Inc.
Written by: Richard Frith-Macdonald <rfm@gnu.org>
Date: May 2004
This file is part of the GNUstep Base Library.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free
Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02111 USA.
AutogsdocSource: NSError.m
*/
#ifndef __NSError_h_GNUSTEP_BASE_INCLUDE
#define __NSError_h_GNUSTEP_BASE_INCLUDE
#import <GNUstepBase/GSVersionMacros.h>
#import <Foundation/NSObject.h>
#if OS_API_VERSION(MAC_OS_X_VERSION_10_3,GS_API_LATEST)
#if defined(__cplusplus)
extern "C" {
#endif
@class NSArray, NSDictionary, NSString;
/**
* Key for user info dictionary component which describes the error in
* a human readable format.
*/
GS_EXPORT NSString* const NSLocalizedDescriptionKey;
/**
* Where one error has caused another, the underlying error can be stored
* in the user info dictionary using this key.
*/
GS_EXPORT NSString* const NSUnderlyingErrorKey;
#if OS_API_VERSION(MAC_OS_X_VERSION_10_4,GS_API_LATEST)
/**
* This key can be used to store the file path of a resource involved
* in the error (eg unreadable file).
*/
GS_EXPORT NSString* const NSFilePathErrorKey;
/**
* Key for an [NSNumber] containing an NSStringEncoding value.
*/
GS_EXPORT NSString* const NSStringEncodingErrorKey;
/**
* This can be used to store the URLK involved in the error.
*/
GS_EXPORT NSString* const NSURLErrorKey;
/**
* Key to store a string describing what caused the error to occur.
*/
GS_EXPORT NSString* const NSLocalizedFailureReasonErrorKey;
/**
* Key to store an [NSArray] of strings suitable for use as the
* titles of buttons in an alert panel used to attempt error
* recovery in a GUI application.
*/
GS_EXPORT NSString* const NSLocalizedRecoveryOptionsErrorKey;
/**
* Key to store a string providing a hint on how to use the buttons
* in an alert panel.
*/
GS_EXPORT NSString* const NSLocalizedRecoverySuggestionErrorKey;
/**
* Key to store an object which can be used to attempt to recover from
* the error.
*/
GS_EXPORT NSString* const NSRecoveryAttempterErrorKey;
#endif
#if OS_API_VERSION(MAC_OS_X_VERSION_10_6,GS_API_LATEST)
/**
* NSURL to indicate the URL which did not load, in the NSURLErrorDomain.
*/
GS_EXPORT NSString* const NSURLErrorFailingURLErrorKey;
/**
* NSString in the NSURLDomain to indicate the object for the URL that did not load.
* This supersedes NSErrorFailingURLStringKey
*/
GS_EXPORT NSString* const NSURLErrorFailingURLStringErrorKey;
#endif
/**
* Domain for system errors (on MACH).
*/
GS_EXPORT NSString* const NSMACHErrorDomain;
/**
* Domain for system errors.
*/
GS_EXPORT NSString* const NSOSStatusErrorDomain;
/**
* Domain for system and system library errors.
*/
GS_EXPORT NSString* const NSPOSIXErrorDomain;
#if OS_API_VERSION(MAC_OS_X_VERSION_10_4,GS_API_LATEST)
/**
* Domain for Foundation and AppKit (base and gui) errors.
*/
GS_EXPORT NSString* const NSCocoaErrorDomain;
#endif
/**
* Error information class.<br />
* NSError instances are used to pass information about runtime errors
* from lower levels to higher levels of the program.<br />
* These should be used instead of exceptions where an error is caused
* by external factors (such as a resource file not being present)
* rather than a programming error (where NSException should be used).
*/
@interface NSError : NSObject <NSCopying, NSCoding>
{
#if GS_EXPOSE(NSError)
@private
int _code;
NSString *_domain;
NSDictionary *_userInfo;
#endif
#if GS_NONFRAGILE
#else
/* Pointer to private additional data used to avoid breaking ABI
* when we don't have the non-fragile ABI available.
* Use this mechanism rather than changing the instance variable
* layout (see Source/GSInternal.h for details).
*/
@private id _internal GS_UNUSED_IVAR;
#endif
}
/**
* Creates and returns an autoreleased NSError instance by calling
* -initWithDomain:code:userInfo:
*/
+ (id) errorWithDomain: (NSString*)aDomain
code: (NSInteger)aCode
userInfo: (NSDictionary*)aDictionary;
/**
* Return the error code ... which is not globally unique, just unique for
* a particular domain.
*/
- (NSInteger) code;
/**
* Return the domain for this instance.
*/
- (NSString*) domain;
/** <init />
* Initialises the receiver using the supplied domain, code, and info.<br />
* The domain must be non-nil.
*/
- (id) initWithDomain: (NSString*)aDomain
code: (NSInteger)aCode
userInfo: (NSDictionary*)aDictionary;
/**
* Return a human readable description for the error.<br />
* The default implementation uses the value from the user info dictionary
* if it is available, otherwise it generates a generic one from domain
* and code.
*/
- (NSString *) localizedDescription;
#if OS_API_VERSION(MAC_OS_X_VERSION_10_4,GS_API_LATEST)
/**
* Return a human readable explanation of the reason for the error
* (if known). This should normally be a more discursive explanation
* then the short one provided by the -localizedDescription method.<br />
* The default implementation uses the value from the user info dictionary
* if it is available, otherwise it returns nil.
*/
- (NSString *) localizedFailureReason;
/**
* Returns an array of strings to be used as titles of buttons in an
* alert panel when offering the user optionbs to try to recover from
* the error.<br />
* The default implementation uses the value from the user info dictionary
* if it is available, otherwise it returns nil.
*/
- (NSArray *) localizedRecoveryOptions;
/**
* Returns a string used as the secondary text in an alert panel,
* suggesting how the user might select an option to attempt to
* recover from the error.<br />
* The default implementation uses the value from the user info dictionary
* if it is available, otherwise it returns nil.
*/
- (NSString *) localizedRecoverySuggestion;
/**
* Not yet useful in GNUstep.<br />
* The default implementation uses the value from the user info dictionary
* if it is available, otherwise it returns nil.
*/
- (id) recoveryAttempter;
#endif
/**
* Return the user info for this instance (or nil if none is set)<br />
* The <code>NSLocalizedDescriptionKey</code> should locate a human readable
* description in the dictionary.<br />
* The <code>NSUnderlyingErrorKey</code> key should locate an
* <code>NSError</code> instance if an error is available describing any
* underlying problem.<br />
*/
- (NSDictionary*) userInfo;
@end
#if defined(__cplusplus)
}
#endif
#endif
#endif /* __NSError_h_GNUSTEP_BASE_INCLUDE*/
|