Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Sep 15, 2009
Commits on Sep 14, 2009
  1. Changed command line arguments parsing to stringWithCString:encoding:…

    … to avoid compile time warning about depreciated method.
Commits on Sep 11, 2009
  1. Updated readme file; finally added --no boolean switch description (p…

    …lus some minor reorganization).
Commits on Aug 21, 2009
Commits on Aug 20, 2009
  1. Added extra reference extension option for concrete OutputGenerators.

    Subclasses can decide to use different reference extensions than generated file extensions. This is useful for markdown for example where we want references point to .html while file extensions to .markdown.
Commits on Jul 9, 2009
  1. Fixed XHTML see also member section output and refined various smalle…

    …d details.
    The problem was that the code generated empty see also section. The reason was twofold: first the code didn't properly handle references and second, the see also list extraction code in the XMLBasedOutputGenerator(ObjectParsingAPI) category returned custom XML which could not be parsed with existing references handling extraction methods.
Commits on Jun 18, 2009
  1. Refactored description blocks documentation extraction.

    Instead of forcing the XMLBasedOutputGenerator subclasses dealing with the underlying XML structure (which was the main reason behind the creation of the XMLBasedOutputGenerator class), the subclasses can use extraction methods in the same way as for handling the rest of the output.
Commits on Jun 14, 2009
  1. Removed commented out pathByReplacingPlaceholders: method - this was …

    …replaced by OutputInfoProvider protocol and it's implementation, plus additional related methods, in the base OutputGenerator class.
Commits on Jun 13, 2009
  1. Implemented the option for custom date/time formatting for last updat…

    …ed message.
    The users can simply add arbitrary static text to the last updated line at the bottom of generated documentation XHTML. Note that at the moment this is only supported for XHTML output. Perhaps a better approach would be to append the information to the XML itself so it would be easily accessible to any dependent output generator or even external utilities that use appledoc clean XML for their source.
  2. Fixed (null) log message which was emitted during empty paragraphs re…

    The log message components were obviously generating a problem while formatting the string. By removing all information the output works. The information was not very helpful anyway.
    Also fixed the link in code documentation for DocSetOutputGenerator which was still pointing to the DoxygenConverter category.
  3. Reorganized output paths generation by moving common code to the Outp…

    This relieves most of the output generators from the burder of repeating creation and removal of the same sets of common output directories. Only subclasses that need to create additional subdirectories, should handle their specifics.
Commits on Jun 12, 2009
  1. Fixed output generator directory dependencies handling.

    Some of the dependent objects still used hard coded directory and file paths from CommandLineParser. These are now properly handled through OutputInfoProvider protocol properties, similar to the was documentation set was linked with it's parent documents output generator. To even more encapsulate different output generators implementations, all paths handling is now moved from the CommandLineParser to concrete generator subclasses. This makes the code more decoupled and OOP.
  2. Fixed code documentation in XMLBasedOutputGenerator and updated log m…

    …essages for DocSetOutputGenerator.
  3. Fixed object inheritance XML generation.

    The problem was in wrong insertion of additional <base> nodes to the main <object> node. If any base node already exists, additional nodes should be inserted after it. However the test that checked for this condition was spelled incorrectly - instead of >, == was used. This is fixed now.
  4. Refactored output generation by moving all specifics to OutputGenerat…

    …or subclasses.
    Each concrete output generator is implemented as a subclass of OutputGenerator instead of extending DoxygenConverter by another category. This results in much cleaner class structure and responsibility division as well as much more decoupling between different output generation objects.
Commits on Jun 7, 2009
  1. Renamed GeneratorBase to OutputGenerator and XHTMLGenerator to XHTMLO…

    This way the names are more consistent with the functonality.
Commits on Jun 6, 2009
  1. Refactored output files extension handling.

    Instead of hard coding the extension to the clean XML, $EXTENSION placeholder string is used. This is eventually converted to proper extension by concrete GeneratorBase subclasses.
    Note that since documentation set generation relies on XHTMLGenerator, it needs to know how to convert the placeholders as well. This brings close coupling between the two objects, but then XHTML generator creates the foundation for the documentation set generation anyway...
  2. Fixed unknown members links handling.

    Instead of "blindly" converting all detected member links to the actual references, each possible link is tested. If the given member exists, the reference is generated, otherwise an error is output so that the user can see and correct it. Note that at this moment, verbose output level would probably need to be set to make it easier to pinpoint the error, although project find would also do it anyway.
  3. Changed the secondary title on hierarchy index to "Class hierarchy".

    This is more or less cosmetic, but it fits nicer to the class reference index descriptions and avoids repetition with the main title.
  4. Implemented full hierarchy generation for the classes.

    This allows output to show all known base classes including references to the actual base descriptions.
Commits on Jun 5, 2009
  1. Added support for browsing documentation set class hierarchy within t…

    …he Xcode documentation window.
  2. Updated logging handling in case of errors by first emmiting context …

    …based error message and only then throwing the error.
    In most cases the error is not directly related to the context, so it's message is confusing as to where the error happened and what the utility was doing. The new messages should handle this better.
  3. Implemented general file copy method in Systemator and fixed it so it…

    … properly overwrites existing files.
  4. Refactored most verbose messages to debug level and introduced verbos…

    …e level 5.
    The new verbose level is actually the same as 4 (debug), except it additionally outputs method name and line number for each message. Changing verbose messages to debug level makes output more consistent and more readable.
Commits on Jun 4, 2009
  1. Fixed XHTML index <li></li> output generation code formatting.

    This is purely puristic fix to make the actual XHTML markup nicer looking. Nothing to do with the actual visual appearance.
Something went wrong with that request. Please try again.