Swiftgram/Classes/CNSCrashReportTextFormatter.h
Andreas Linde 6e6b3ffdfd Add new crash report formatter
Enables automatic and async-safe symbolication of system framework symbols right on the device
2012-07-03 17:39:16 +02:00

72 lines
2.5 KiB
Objective-C

/*
* Authors:
* Landon Fuller <landonf@plausiblelabs.com>
* Damian Morris <damian@moso.com.au>
* Andreas Linde <mail@andreaslinde.de>
*
* Copyright (c) 2008-2012 Plausible Labs Cooperative, Inc.
* Copyright (c) 2010 MOSO Corporation, Pty Ltd.
* Copyright (c) 2012 Codenauts UG (haftungsbeschränkt)
* All rights reserved.
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
#import <Foundation/Foundation.h>
#import "CrashReporter/PLCrashReportFormatter.h"
/**
* Supported text output formats.
*
* @ingroup enums
*/
typedef enum {
/** An iOS-compatible crash log text format. Compatible with the crash logs generated by the device and available
* through iTunes Connect. */
CNSCrashReportTextFormatiOS = 0
} CNSCrashReportTextFormat;
// Dictionary keys for array elements returned by arrayOfAppUUIDsForCrashReport:
#define kCNSBinaryImageKeyUUID @"uuid"
#define kCNSBinaryImageKeyArch @"arch"
#define kCNSBinaryImageKeyType @"type"
@interface CNSCrashReportTextFormatter : NSObject <PLCrashReportFormatter> {
@private
/** Text output format. */
CNSCrashReportTextFormat _textFormat;
/** Encoding to use for string output. */
NSStringEncoding _stringEncoding;
}
+ (NSString *) stringValueForCrashReport: (PLCrashReport *) report withTextFormat: (CNSCrashReportTextFormat) textFormat;
+ (NSArray *) arrayOfAppUUIDsForCrashReport: (PLCrashReport *) report;
- (id) initWithTextFormat: (CNSCrashReportTextFormat) textFormat stringEncoding: (NSStringEncoding) stringEncoding;
@end