File: programming/cocoa/Filie.zip/Filie/UliKit/UKDebugNames.m


//
//  UKDebugNames.m
//  filebrowser
//
//  Created by Uli Kusterer on 01.05.05.
//  Copyright 2005 M. Uli Kusterer. All rights reserved.
//
 
#import "UKDebugNames.h"
// Object pointer -> human-readable name map. Keys are hex strings ("0x00123456").
// Array of human-readable names we pick object names from.
// Counter of next name from debug names array we'll use. May be out of range, in which case we wrap it before look-up.
// Counter to allow reusing names when we have used up all names in the debug names array.
"(null)";
    
    // Lazily instantiate our mapping table and our list of human-readable names to choose from:
"UKDebugNames" ofType: @"plist"]];
    
    // Generate a key and try to look up an existing mapping table entry:
"%lx"// No entry yet?
    {
        // Verify the "next name" index is still in range:
// If not, increase the number appended to each name by one...
            gUKDebugNamesNextNameIndex = 0; // ... and wrap back to the start of the name list.
        }
        
        // Get the next name and increment our "next name" counter:
"(null-name)";
        
        // If we're out of fresh names (reuse > 0), append the number to the name:
" %d""(null-name2)";
            
        // Add name to our mapping table so next time we can return the same name for this object:
// Let the caller have the name.
}

This code uses the PclZip Zip File reading code, which is subject to the GNU LGPL. It also uses the GeSHi syntax highlighter, subject to the GPL. Ask if you want this for your own web site, it's free.