3 // This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files.
4 // Copyright (C) 1997-2019 Steve Nygard.
6 #include <mach-o/nlist.h>
8 extern NSString
*const ObjCClassSymbolPrefix
;
10 @
class CDMachOFile
, CDSection
, CDLCDylib
;
12 @interface CDSymbol
: NSObject
14 - (id
)initWithName
:(NSString
*)name machOFile
:(CDMachOFile
*)machOFile nlist32
:(struct nlist
)nlist32
;
15 - (id
)initWithName
:(NSString
*)name machOFile
:(CDMachOFile
*)machOFile nlist64
:(struct nlist_64
)nlist64
;
17 @
property (nonatomic
, readonly
) uint64_t value
;
18 @
property (readonly
) NSString
*name
;
19 @
property (nonatomic
, readonly
) CDSection
*section
;
20 @
property (nonatomic
, readonly
) CDLCDylib
*dylibLoadCommand
;
22 @
property (nonatomic
, readonly
) BOOL isExternal
;
23 @
property (nonatomic
, readonly
) BOOL isPrivateExternal
;
24 @
property (nonatomic
, readonly
) NSUInteger stab
;
25 @
property (nonatomic
, readonly
) NSUInteger type
;
26 @
property (nonatomic
, readonly
) BOOL isDefined
;
27 @
property (nonatomic
, readonly
) BOOL isAbsolute
;
28 @
property (nonatomic
, readonly
) BOOL isInSection
;
29 @
property (nonatomic
, readonly
) BOOL isPrebound
;
30 @
property (nonatomic
, readonly
) BOOL isIndirect
;
31 @
property (nonatomic
, readonly
) BOOL isCommon
;
32 @
property (nonatomic
, readonly
) BOOL isInTextSection
;
33 @
property (nonatomic
, readonly
) BOOL isInDataSection
;
34 @
property (nonatomic
, readonly
) BOOL isInBssSection
;
35 @
property (nonatomic
, readonly
) NSUInteger referenceType
;
36 @
property (nonatomic
, readonly
) NSString
*referenceTypeName
;
37 @
property (nonatomic
, readonly
) NSString
*shortTypeDescription
;
38 @
property (nonatomic
, readonly
) NSString
*longTypeDescription
;
40 - (NSComparisonResult
)compare
:(CDSymbol
*)other
;
41 - (NSComparisonResult
)compareByName
:(CDSymbol
*)other
;
43 + (NSString
*)classNameFromSymbolName
:(NSString
*)symbolName
;