Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 135 lines (108 sloc) 6.108 kB
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
1 //
3a46c43 @tomaz Refactored output generation by moving all specifics to OutputGenerat…
authored
2 // XMLBasedOutputGenerator+IndexSubclassAPI.h
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
3 // appledoc
4 //
5 // Created by Tomaz Kragelj on 28.5.09.
6 // Copyright (C) 2009, Tomaz Kragelj. All rights reserved.
7 //
8
9 #import <Foundation/Foundation.h>
3a46c43 @tomaz Refactored output generation by moving all specifics to OutputGenerat…
authored
10 #import "XMLBasedOutputGenerator.h"
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
11
12 //////////////////////////////////////////////////////////////////////////////////////////
13 //////////////////////////////////////////////////////////////////////////////////////////
3a46c43 @tomaz Refactored output generation by moving all specifics to OutputGenerat…
authored
14 /** Defines helper virtual methods for the @c XMLBasedOutputGenerator subclasses that help
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
15 index output generation.
16 */
3a46c43 @tomaz Refactored output generation by moving all specifics to OutputGenerat…
authored
17 @interface XMLBasedOutputGenerator (IndexSubclassAPI)
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
18
19 //////////////////////////////////////////////////////////////////////////////////////////
20 /// @name Subclass index file header and footer handling
21 //////////////////////////////////////////////////////////////////////////////////////////
22
2677c27 @tomaz Removed all unicode characters inserted by the doxygen custom user sc…
authored
23 /** Appends any header text before the actual generation starts.
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
24
04e7189 @tomaz Fixed code documentation in XMLBasedOutputGenerator and updated log m…
authored
25 The message is sent from the @c XMLBasedOutputGenerator::outputDataForIndex() as the first
26 message. It gives subclasses a chance to append data to the output before the actual output
27 generation starts. After this message is sent, the rest of the messages are followed and as
28 the last one, @c appendIndexFooterToData:() is sent.
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
29
8a491c3 @tomaz Implemented markdown output generator.
authored
30 @param data The data to append to. This is guaranteed to be non @c mil.
2677c27 @tomaz Removed all unicode characters inserted by the doxygen custom user sc…
authored
31 @exception NSException Thrown if appending fails.
3a46c43 @tomaz Refactored output generation by moving all specifics to OutputGenerat…
authored
32 @see XMLBasedOutputGenerator::outputDataForIndex
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
33 @see appendIndexFooterToData:
34 */
35 - (void) appendIndexHeaderToData:(NSMutableData*) data;
36
2677c27 @tomaz Removed all unicode characters inserted by the doxygen custom user sc…
authored
37 /** Appends any footer text after output generation ends.
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
38
04e7189 @tomaz Fixed code documentation in XMLBasedOutputGenerator and updated log m…
authored
39 The message is sent from the @c XMLBasedOutputGenerator::outputDataForIndex() as the last
40 message. It gives subclasses a chance to append data to the output after the rest of the
41 output is generated. This is ussually the place to "close" open tags or similar.
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
42
8a491c3 @tomaz Implemented markdown output generator.
authored
43 @param data The data to append to. This is guaranteed to be non @c mil.
2677c27 @tomaz Removed all unicode characters inserted by the doxygen custom user sc…
authored
44 @exception NSException Thrown if appending fails.
3a46c43 @tomaz Refactored output generation by moving all specifics to OutputGenerat…
authored
45 @see XMLBasedOutputGenerator::outputDataForIndex
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
46 @see appendIndexHeaderToData:
47 */
48 - (void) appendIndexFooterToData:(NSMutableData*) data;
49
50 //////////////////////////////////////////////////////////////////////////////////////////
51 /// @name Subclass index group handling
52 //////////////////////////////////////////////////////////////////////////////////////////
53
2677c27 @tomaz Removed all unicode characters inserted by the doxygen custom user sc…
authored
54 /** Appends any index group header text before the actual group items generation starts.
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
55
04e7189 @tomaz Fixed code documentation in XMLBasedOutputGenerator and updated log m…
authored
56 The message is sent from the @c XMLBasedOutputGenerator::outputDataForIndex() just before
57 index group items are generated. It gives subclasses a chance to append data to the output
58 before the generation for group items starts. After this message is sent, at least one
c4cf7ba @tomaz Implemented objects hierarchy output generation.
authored
59 @c appendIndexGroupItemToData:fromItem:index:type:() message is sent and then
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
60 @c appendIndexGroupFooterToData:type:() is sent at the end.
61
62 The type identifies the type of the index group and can be one of the following:
63 - @c kTKIndexGroupClasses: This group will append all classes.
64 - @c kTKIndexGroupProtocols: This group will append all protocols.
65 - @c kTKIndexGroupCategories: This group will append all categories.
66
8a491c3 @tomaz Implemented markdown output generator.
authored
67 @param data The data to append to. This is guaranteed to be non @c mil.
2677c27 @tomaz Removed all unicode characters inserted by the doxygen custom user sc…
authored
68 @param type The type of the index group.
69 @exception NSException Thrown if appending fails.
3a46c43 @tomaz Refactored output generation by moving all specifics to OutputGenerat…
authored
70 @see XMLBasedOutputGenerator::outputDataForIndex
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
71 @see appendIndexGroupItemToData:fromItem:index:type:
72 @see appendIndexGroupFooterToData:type:
73 */
74 - (void) appendIndexGroupHeaderToData:(NSMutableData*) data
75 type:(int) type;
76
2677c27 @tomaz Removed all unicode characters inserted by the doxygen custom user sc…
authored
77 /** Appends any index group footer text after the group items generation ends.
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
78
04e7189 @tomaz Fixed code documentation in XMLBasedOutputGenerator and updated log m…
authored
79 The message is sent from the @c XMLBasedOutputGenerator::outputDataForIndex() as the last
80 group generation message. It gives subclasses a chance to append data to the output after the
0ce036a @tomaz Fixed code documentation, especially references for GeneratorBase and…
authored
81 generation for index group ends. This is ussually the place to "close" open tags or similar.
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
82
83 The type identifies the type of the index group and can be one of the following:
84 - @c kTKIndexGroupClasses: This group will append all classes.
85 - @c kTKIndexGroupProtocols: This group will append all protocols.
86 - @c kTKIndexGroupCategories: This group will append all categories.
87
8a491c3 @tomaz Implemented markdown output generator.
authored
88 @param data The data to append to. This is guaranteed to be non @c mil.
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
89 @param type The type of the index group.
2677c27 @tomaz Removed all unicode characters inserted by the doxygen custom user sc…
authored
90 @exception NSException Thrown if appending fails.
3a46c43 @tomaz Refactored output generation by moving all specifics to OutputGenerat…
authored
91 @see XMLBasedOutputGenerator::outputDataForIndex
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
92 @see appendIndexGroupHeaderToData:type:
93 @see appendIndexGroupItemToData:fromItem:index:type:
94 */
95 - (void) appendIndexGroupFooterToData:(NSMutableData*) data
96 type:(int) type;
97
2677c27 @tomaz Removed all unicode characters inserted by the doxygen custom user sc…
authored
98 /** Appends the given index group item data.
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
99
04e7189 @tomaz Fixed code documentation in XMLBasedOutputGenerator and updated log m…
authored
100 This message is sent from @c XMLBasedOutputGenerator::outputDataForIndex() for each group
101 member. The subclass should append the data for the given item. The subclass can get more
0ce036a @tomaz Fixed code documentation, especially references for GeneratorBase and…
authored
102 information about the member by using the index member data methods from the
3a46c43 @tomaz Refactored output generation by moving all specifics to OutputGenerat…
authored
103 @c XMLBasedOutputGenerator(IndexParsingAPI) category.
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
104
105 The type identifies the type of the index group and can be one of the following:
106 - @c kTKIndexGroupClasses: This group will append all classes.
107 - @c kTKIndexGroupProtocols: This group will append all protocols.
108 - @c kTKIndexGroupCategories: This group will append all categories.
109
8a491c3 @tomaz Implemented markdown output generator.
authored
110 @param data The data to append to. This is guaranteed to be non @c mil.
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
111 @param item The data item describing the given member.
112 @param index Zero based index of the member within the group.
113 @param type The type of the index group.
114 @exception NSException Thrown if appending fails.
3a46c43 @tomaz Refactored output generation by moving all specifics to OutputGenerat…
authored
115 @see XMLBasedOutputGenerator::outputDataForIndex
afb0a1f @tomaz Implemented index output generation over the GeneratorBase.
authored
116 @see appendIndexGroupHeaderToData:type:
117 @see appendIndexGroupFooterToData:type:
118 */
119 - (void) appendIndexGroupItemToData:(NSMutableData*) data
120 fromItem:(id) item
121 index:(int) index
122 type:(int) type;
123
124 //////////////////////////////////////////////////////////////////////////////////////////
125 /// @name Properties
126 //////////////////////////////////////////////////////////////////////////////////////////
127
128 /** Returns current index output title. */
129 @property(readonly) NSString* indexTitle;
130
131 /** Returns current index cleaned XML document. */
132 @property(readonly) NSXMLDocument* indexMarkup;
133
134 @end
Something went wrong with that request. Please try again.