PageRenderTime 16ms CodeModel.GetById 11ms app.highlight 3ms RepoModel.GetById 0ms app.codeStats 0ms

/CDStructureTable.h

http://i386codedump.googlecode.com/
C Header | 63 lines | 42 code | 19 blank | 2 comment | 0 complexity | 66a1c06d1b9d4ff426d15eb442638e9c MD5 | raw file
 1//  This file is part of class-dump, a utility for examining the Objective-C segment of Mach-O files.
 2//  Copyright (C) 1997-1998, 2000-2001, 2004-2006  Steve Nygard
 3
 4#import <Foundation/NSObject.h>
 5
 6#import "CDStructureRegistrationProtocol.h"
 7
 8@class NSMutableArray, NSMutableDictionary, NSMutableSet, NSMutableString;
 9@class CDClassDump, CDType, CDSymbolReferences, CDTypeFormatter;
10
11@interface CDStructureTable : NSObject
12{
13    NSString *name;
14    NSString *anonymousBaseName;
15
16    NSMutableDictionary *structuresByName;
17    NSMutableDictionary *anonymousStructureCountsByType;
18    NSMutableDictionary *anonymousStructuresByType;
19    NSMutableDictionary *anonymousStructureNamesByType;
20
21    NSMutableSet *forcedTypedefs;
22
23    NSMutableSet *structureSignatures; // generated during phase 1
24    NSMutableArray *structureTypes; // generated during phase 1
25    NSMutableDictionary *replacementSignatures; // generated at end of phase 1
26
27    struct {
28        unsigned int shouldDebug:1;
29    } flags;
30}
31
32- (id)init;
33- (void)dealloc;
34
35- (NSString *)name;
36- (void)setName:(NSString *)newName;
37
38- (NSString *)anonymousBaseName;
39- (void)setAnonymousBaseName:(NSString *)newName;
40
41- (BOOL)shouldDebug;
42- (void)setShouldDebug:(BOOL)newFlag;
43
44- (void)logPhase1Data;
45- (void)finishPhase1;
46- (void)logInfo;
47
48- (void)generateNamesForAnonymousStructures;
49
50- (void)appendNamedStructuresToString:(NSMutableString *)resultString classDump:(CDClassDump *)aClassDump formatter:(CDTypeFormatter *)aTypeFormatter symbolReferences:(CDSymbolReferences *)symbolReferences;
51- (void)appendTypedefsToString:(NSMutableString *)resultString classDump:(CDClassDump *)aClassDump formatter:(CDTypeFormatter *)aTypeFormatter symbolReferences:(CDSymbolReferences *)symbolReferences;
52
53- (void)forceTypedefForStructure:(NSString *)typeString;
54- (CDType *)replacementForType:(CDType *)aType;
55- (NSString *)typedefNameForStructureType:(CDType *)aType;
56
57- (void)phase1RegisterStructure:(CDType *)aStructure;
58- (BOOL)phase2RegisterStructure:(CDType *)aStructure withObject:(id <CDStructureRegistration>)anObject usedInMethod:(BOOL)isUsedInMethod
59                countReferences:(BOOL)shouldCountReferences;
60
61- (void)generateMemberNames;
62
63@end