/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. #import <Foundation/NSObject.h>
  4. #import "CDStructureRegistrationProtocol.h"
  5. @class NSMutableArray, NSMutableDictionary, NSMutableSet, NSMutableString;
  6. @class CDClassDump, CDType, CDSymbolReferences, CDTypeFormatter;
  7. @interface CDStructureTable : NSObject
  8. {
  9. NSString *name;
  10. NSString *anonymousBaseName;
  11. NSMutableDictionary *structuresByName;
  12. NSMutableDictionary *anonymousStructureCountsByType;
  13. NSMutableDictionary *anonymousStructuresByType;
  14. NSMutableDictionary *anonymousStructureNamesByType;
  15. NSMutableSet *forcedTypedefs;
  16. NSMutableSet *structureSignatures; // generated during phase 1
  17. NSMutableArray *structureTypes; // generated during phase 1
  18. NSMutableDictionary *replacementSignatures; // generated at end of phase 1
  19. struct {
  20. unsigned int shouldDebug:1;
  21. } flags;
  22. }
  23. - (id)init;
  24. - (void)dealloc;
  25. - (NSString *)name;
  26. - (void)setName:(NSString *)newName;
  27. - (NSString *)anonymousBaseName;
  28. - (void)setAnonymousBaseName:(NSString *)newName;
  29. - (BOOL)shouldDebug;
  30. - (void)setShouldDebug:(BOOL)newFlag;
  31. - (void)logPhase1Data;
  32. - (void)finishPhase1;
  33. - (void)logInfo;
  34. - (void)generateNamesForAnonymousStructures;
  35. - (void)appendNamedStructuresToString:(NSMutableString *)resultString classDump:(CDClassDump *)aClassDump formatter:(CDTypeFormatter *)aTypeFormatter symbolReferences:(CDSymbolReferences *)symbolReferences;
  36. - (void)appendTypedefsToString:(NSMutableString *)resultString classDump:(CDClassDump *)aClassDump formatter:(CDTypeFormatter *)aTypeFormatter symbolReferences:(CDSymbolReferences *)symbolReferences;
  37. - (void)forceTypedefForStructure:(NSString *)typeString;
  38. - (CDType *)replacementForType:(CDType *)aType;
  39. - (NSString *)typedefNameForStructureType:(CDType *)aType;
  40. - (void)phase1RegisterStructure:(CDType *)aStructure;
  41. - (BOOL)phase2RegisterStructure:(CDType *)aStructure withObject:(id <CDStructureRegistration>)anObject usedInMethod:(BOOL)isUsedInMethod
  42. countReferences:(BOOL)shouldCountReferences;
  43. - (void)generateMemberNames;
  44. @end