Diffstat (limited to 'htdocs/quickref/metasyntax.chtml') (more/less context) (ignore whitespace changes)
-rw-r--r-- | htdocs/quickref/metasyntax.chtml | 193 |
1 files changed, 110 insertions, 83 deletions
diff --git a/htdocs/quickref/metasyntax.chtml b/htdocs/quickref/metasyntax.chtml index a63f596..4efc37c 100644 --- a/htdocs/quickref/metasyntax.chtml +++ b/htdocs/quickref/metasyntax.chtml | |||
@@ -34,311 +34,338 @@ | |||
34 | 34 | ||
35 | % /* % */ | 35 | % /* % */ |
36 | <dt> | 36 | <dt> |
37 | <a id="qr__line" name="qr__line" title="line of code"> | 37 | <a id="qr__line" name="qr__line" title="line of code"> |
38 | <code>% <kbd>line of code</kbd></code> | 38 | <code>% <kbd>line of code</kbd></code> |
39 | </a> | 39 | </a> |
40 | </dt> | 40 | </dt> |
41 | <dd> | 41 | <dd> |
42 | <p> | 42 | <p> |
43 | Break out into the code mode for just one line. | 43 | Break out into the code mode for just one line. |
44 | </p> | 44 | </p> |
45 | <blockquote class="qr_sample"> | 45 | <blockquote class="qr_sample"> |
46 | <body><br/> | 46 | <div> |
47 | <em><a href="#qr__line" title="% description">%</a> for(int t=0;t<10;t++) {<br/></em> | 47 | <body><br/> |
48 | Here is the way we count.<br/><br/> | 48 | Here is the way we count.<br/><br/> |
49 | Just saying out loud: <a href="#qr__inline" title="<% ... %> description"><%</a> t <a href="#qr__inline" title="<% ... %> description">%></a><br/><br/> | 49 | <em><a href="#qr__line" title="% description">%</a> for(int t=0;t<10;t++) {<br/></em> |
50 | <em><a href="#qr__line" title="% description">%</a> }<br/></em> | 50 | Just saying out loud: <a href="#qr__inline" title="<% ... %> description"><%</a> t <a href="#qr__inline" title="<% ... %> description">%></a><br/><br/> |
51 | </body> | 51 | <em><a href="#qr__line" title="% description">%</a> }<br/></em> |
52 | </body> | ||
53 | </div> | ||
52 | </blockquote> | 54 | </blockquote> |
53 | </dd> | 55 | </dd> |
54 | 56 | ||
55 | % /* <% %> */ | 57 | % /* <% %> */ |
56 | <dt> | 58 | <dt> |
57 | <a id="qr__inline" name="qr__inline" title="output expression"> | 59 | <a id="qr__inline" name="qr__inline" title="output expression"> |
58 | <code><% <kbd>expression</kbd> %></code> | 60 | <code><% <kbd>expression</kbd> %></code> |
59 | </a> | 61 | </a> |
60 | </dt> | 62 | </dt> |
61 | <dd> | 63 | <dd> |
62 | <p> | 64 | <p> |
63 | << <kbd>expression</kbd> into output stream (think c++). | 65 | << <kbd>expression</kbd> into output stream (think c++). |
64 | </p> | 66 | </p> |
65 | <blockquote class="qr_sample"> | 67 | <blockquote class="qr_sample"> |
66 | <a href="#qr__line" title="% description">%</a> for(int t=0;t<10;t++) {<br/> | 68 | <div> |
67 | Here is the way we count.<br/><br/> | 69 | Here is the way we count.<br/><br/> |
68 | <em> Just saying out loud: <a href="#qr__inline" title="<% ... %> description"><%</a> t <a href="#qr__inline" title="<% ... %> description">%></a><br/><br/></em> | 70 | <a href="#qr__line" title="% description">%</a> for(int t=0;t<10;t++) {<br/> |
69 | <a href="#qr__line" title="% description">%</a> } | 71 | <em> Just saying out loud: <a href="#qr__inline" title="<% ... %> description"><%</a> t <a href="#qr__inline" title="<% ... %> description">%></a><br/><br/></em> |
72 | <a href="#qr__line" title="% description">%</a> } | ||
73 | </div> | ||
70 | </blockquote> | 74 | </blockquote> |
71 | </dd> | 75 | </dd> |
72 | 76 | ||
73 | % /* %code */ | 77 | % /* %code */ |
74 | <dt> | 78 | <dt> |
75 | <a id="qr__code" name="qr__code" title="switching to code mode"> | 79 | <a id="qr__code" name="qr__code" title="switching to code mode"> |
76 | <code> | 80 | <code> |
77 | <%code> <kbd>...</kbd> </%code> | 81 | <%code> <kbd>...</kbd> </%code> |
78 | </code> | 82 | </code> |
79 | </a> | 83 | </a> |
80 | </dt> | 84 | </dt> |
81 | <dd> | 85 | <dd> |
82 | Escape from the output mode to code mode. Opposite to <code><a href="#qr__output" title="<%output> description"><%output></a></code>. Roughly the same as <code><a href="#qr__output" title="<%output> description"></%output></a> <kbd>...</kbd> <a href="#qr__output" title="<%output> description"><%output></a></code> (note the reverse order), but more self-explanatory and applies to more cases. | 86 | <p> |
87 | Escape from the output mode to code mode. Opposite to <code><a href="#qr__output" title="<%output> description"><%output></a></code>. Roughly the same as <code><a href="#qr__output" title="<%output> description"></%output></a> <kbd>...</kbd> <a href="#qr__output" title="<%output> description"><%output></a></code> (note the reverse order), but more self-explanatory and applies to more cases. | ||
83 | </p> | 88 | </p> |
84 | <blockquote class="qr_sample"> | 89 | <blockquote class="qr_sample"> |
85 | <body><br/> | 90 | <div> |
86 | <em> <a href="#qr__code" title="<%code> descrption"><%code></a><br/></em> | 91 | <body><br/> |
87 | for(int t=0;t<10;t++) {<br/> | 92 | <em> <a href="#qr__code" title="<%code> descrption"><%code></a><br/></em> |
88 | <a href="#qr__output" title="<%output> descrption"><%output></a><br/> | 93 | for(int t=0;t<10;t++) {<br/> |
89 | Here is the way we count.<br/><br/> | 94 | <a href="#qr__output" title="<%output> descrption"><%output></a><br/> |
90 | Just saying out loud: <a href="#qr__inline" title="<% ... %> description"><%</a> t <a href="#qr__inline" title="<% ... %> description">%></a><br/><br/> | 95 | Here is the way we count.<br/><br/> |
91 | <a href="#qr__output" title="<%output> descrption"></%output></a><br/> | 96 | Just saying out loud: <a href="#qr__inline" title="<% ... %> description"><%</a> t <a href="#qr__inline" title="<% ... %> description">%></a><br/><br/> |
92 | <em> <a href="#qr__code" title="<%code> descrption"></%code></a><br/></em> | 97 | <a href="#qr__output" title="<%output> descrption"></%output></a><br/> |
93 | </body> | 98 | <em> <a href="#qr__code" title="<%code> descrption"></%code></a><br/></em> |
99 | </body> | ||
100 | </div> | ||
94 | </blockquote> | 101 | </blockquote> |
95 | </dd> | 102 | </dd> |
96 | 103 | ||
97 | % /* %codemethod */ | 104 | % /* %codemethod */ |
98 | <dt> | 105 | <dt> |
99 | <a id="qr__codemethod" name="qr__codemethod" title="member function definition"> | 106 | <a id="qr__codemethod" name="qr__codemethod" title="member function definition"> |
100 | <code> | 107 | <code> |
101 | <%codemethod <kbd>return_type_t</kbd> <kbd>member_name</kbd>(<kbd>args,...</kbd>) %><br/> | 108 | <%codemethod <kbd>return_type_t</kbd> <kbd>member_name</kbd>(<kbd>args,...</kbd>) %><br/> |
102 | <kbd>code</kbd><br/> | 109 | <kbd>code</kbd><br/> |
103 | </%codemethod> | 110 | </%codemethod> |
104 | </code> | 111 | </code> |
105 | </a> | 112 | </a> |
106 | </dt> | 113 | </dt> |
107 | <dd> | 114 | <dd> |
108 | <p> | 115 | <p> |
109 | Define the member function. Essentially equivalent to <code><a href="#qr__method" title="<%method ... %> description" class="internal"><%method</a> <kbd>...</kbd> <a href="#qr__method" title="<%method ... %> description" class="internal">%></a><a href="#qr__code" title="<%code> description" class="internal"><%code></a> <kbd>...</kbd> <a href="#qr__code" title="<%code> description" class="internal"></%code></a><a href="#qr__method" title="<%method ... %> description" class="internal"></%method></a></code>. | 116 | Define the member function. Essentially equivalent to <code><a href="#qr__method" title="<%method ... %> description" class="internal"><%method</a> <kbd>...</kbd> <a href="#qr__method" title="<%method ... %> description" class="internal">%></a><a href="#qr__code" title="<%code> description" class="internal"><%code></a> <kbd>...</kbd> <a href="#qr__code" title="<%code> description" class="internal"></%code></a><a href="#qr__method" title="<%method ... %> description" class="internal"></%method></a></code>. |
110 | </p> | 117 | </p> |
111 | <blockquote class="qr_sample"> | 118 | <blockquote class="qr_sample"> |
112 | <em><a href="#qr__codemethod" title="<%codemethod ... %> description"><%codemethod</a> std::string ua() <a href="#qr__codemethod" title="<%codemethod ... %> description">%></a><br/> | 119 | <div> |
113 | return __CGI->get_meta("USER_AGENT");<br/> | 120 | <em><a href="#qr__codemethod" title="<%codemethod ... %> description"><%codemethod</a> std::string ua() <a href="#qr__codemethod" title="<%codemethod ... %> description">%></a><br/> |
114 | <a href="#qr__codemethod" title="<%codemethod ... %> description"></%codemethod></a><br/></em> | 121 | return __CGI->get_meta("USER_AGENT");<br/> |
115 | The user agent is: <a href="#qr__inline" title="<% ... %> description"><%</a> ua() <a href="#qr__inline" title="<% ... %> description">%></a><br/> | 122 | <a href="#qr__codemethod" title="<%codemethod ... %> description"></%codemethod></a><br/></em> |
123 | The user agent is: <a href="#qr__inline" title="<% ... %> description"><%</a> ua() <a href="#qr__inline" title="<% ... %> description">%></a><br/> | ||
124 | </div> | ||
116 | </blockquote> | 125 | </blockquote> |
117 | </dd> | 126 | </dd> |
118 | 127 | ||
119 | % /* %constructor */ | 128 | % /* %constructor */ |
120 | <dt> | 129 | <dt> |
121 | <a id="qr__constructor" name="qr__constructor" title="constructor code"> | 130 | <a id="qr__constructor" name="qr__constructor" title="constructor code"> |
122 | <code> | 131 | <code> |
123 | <%constructor><br/> | 132 | <%constructor><br/> |
124 | <kbd>code</kbd><br/> | 133 | <kbd>code</kbd><br/> |
125 | </%constructor> | 134 | </%constructor> |
126 | </code> | 135 | </code> |
127 | </a> | 136 | </a> |
128 | </dt> | 137 | </dt> |
129 | <dd> | 138 | <dd> |
130 | <p> | 139 | <p> |
131 | Provide the code for constructor. | 140 | Provide the code for constructor. |
132 | </p> | 141 | </p> |
133 | <blockquote class="qr_sample"> | 142 | <blockquote class="qr_sample"> |
134 | <a href="#qr___var" title="%%var description">%%var</a> bool is_msie;<br/> | 143 | <div> |
135 | <em><a href="#qr__constructor" title="<%constructor> description"><%constructor></a><br/> | 144 | <a href="#qr___var" title="%%var description">%%var</a> bool is_msie;<br/> |
136 | is_msie = (__CGI->get_meta("USER_AGENT").find("MSIE")!=string::npos);<br/> | 145 | <em><a href="#qr__constructor" title="<%constructor> description"><%constructor></a><br/> |
137 | <a href="#qr__constructor" title="<%constructor> description"></%constructor></a><br/></em> | 146 | is_msie = (__CGI->get_meta("USER_AGENT").find("MSIE")!=string::npos);<br/> |
147 | <a href="#qr__constructor" title="<%constructor> description"></%constructor></a><br/></em> | ||
148 | </div> | ||
138 | </blockquote> | 149 | </blockquote> |
139 | </dd> | 150 | </dd> |
140 | 151 | ||
141 | % /* %decl / %%decl */ | 152 | % /* %decl / %%decl */ |
142 | <dt> | 153 | <dt> |
143 | <a id="qr___decl" name="qr___decl" title="verbatim declaration"> | 154 | <a id="qr___decl" name="qr___decl" title="verbatim declaration"> |
144 | <code>%%decl <kbd>line of code</kbd></code> | 155 | <code>%%decl <kbd>line of code</kbd></code> |
145 | </a> | 156 | </a> |
146 | </dt> | 157 | </dt> |
147 | <dt> | 158 | <dt> |
148 | <a id="qr__decl" name="qr__decl" title="verbatim declaration"> | 159 | <a id="qr__decl" name="qr__decl" title="verbatim declaration"> |
149 | <code> | 160 | <code> |
150 | <%decl><br/> | 161 | <%decl><br/> |
151 | <kbd>lines of code</kbd><br/> | 162 | <kbd>lines of code</kbd><br/> |
152 | </%decl> | 163 | </%decl> |
153 | </code> | 164 | </code> |
154 | </a> | 165 | </a> |
155 | </dt> | 166 | </dt> |
156 | <dd> | 167 | <dd> |
157 | <p> | 168 | <p> |
158 | Put the line(s) of code into the resulting <em>.h</em> file before the | 169 | Put the line(s) of code into the resulting <em>.h</em> file before the |
159 | class declaration. | 170 | class declaration. |
160 | </p> | 171 | </p> |
161 | <blockquote class="qr_sample"> | 172 | <blockquote class="qr_sample"> |
162 | <em><a href="#qr___decl" title="%%decl description">%%decl</a> #include <string><br/></em> | 173 | <div> |
163 | <a href="#qr___var" title="%%var description">%%var</a> std::string str = "default"<br/> | 174 | <em><a href="#qr___decl" title="%%decl description">%%decl</a> #include <string><br/></em> |
164 | <em><a href="#qr__decl" title="<%decl> description"><%decl></a><br/> | 175 | <a href="#qr___var" title="%%var description">%%var</a> std::string str = "default"<br/> |
165 | typedef int integer_t;<br/> | 176 | <em><a href="#qr__decl" title="<%decl> description"><%decl></a><br/> |
166 | <a href="#qr__decl" title="<%decl> description"></%decl></a><br/></em> | 177 | typedef int integer_t;<br/> |
167 | <a href="#qr__method" title="<%method ... %> description"><%method</a> void do_nothing(integer_t input) <a href="#qr__method" title="<%method ... %> description">%></a><br/> | 178 | <a href="#qr__decl" title="<%decl> description"></%decl></a><br/></em> |
168 | nothing is done<br/> | 179 | <a href="#qr__method" title="<%method ... %> description"><%method</a> void do_nothing(integer_t input) <a href="#qr__method" title="<%method ... %> description">%></a><br/> |
169 | <a href="#qr__method" title="<%method ... %> description"></%method></a> | 180 | nothing is done<br/> |
181 | <a href="#qr__method" title="<%method ... %> description"></%method></a> | ||
182 | </div> | ||
170 | </blockquote> | 183 | </blockquote> |
171 | </dd> | 184 | </dd> |
172 | 185 | ||
173 | % /* %%derive */ | 186 | % /* %%derive */ |
174 | <dt> | 187 | <dt> |
175 | <a id="qr___derive" name="qr___derive" title="base class(es) specification"> | 188 | <a id="qr___derive" name="qr___derive" title="base class(es) specification"> |
176 | <code>%%derive <kbd>name</kbd> = "<kbd>base-component</kbd>";</code> | 189 | <code>%%derive <kbd>name</kbd> = "<kbd>base-component</kbd>";</code> |
177 | </a> | 190 | </a> |
178 | </dt> | 191 | </dt> |
179 | <dd> | 192 | <dd> |
180 | <p> | 193 | <p> |
181 | Inherit what is there to be inherited from the base component specified. | 194 | Inherit what is there to be inherited from the base component specified. |
182 | </p> | 195 | </p> |
183 | <blockquote class="qr_sample"> | 196 | <blockquote class="qr_sample"> |
184 | <em><a href="#qr___derive" title="%%derive description">%%derive</a> pagelayout = "/ancestry/page_layout.chtml";<br/></em> | 197 | <div> |
185 | <a href="#qr__line" title="% description">%</a> pagelayout::member_function(); | 198 | <em><a href="#qr___derive" title="%%derive description">%%derive</a> pagelayout = "/ancestry/page_layout.chtml";<br/></em> |
199 | <a href="#qr__line" title="% description">%</a> pagelayout::member_function(); | ||
200 | </div> | ||
186 | </blockquote> | 201 | </blockquote> |
187 | </dd> | 202 | </dd> |
188 | 203 | ||
189 | % /* %destructor */ | 204 | % /* %destructor */ |
190 | <dt> | 205 | <dt> |
191 | <a id="qr__destructor" name="qr__destructor" title="destructor code"> | 206 | <a id="qr__destructor" name="qr__destructor" title="destructor code"> |
192 | <code> | 207 | <code> |
193 | <%destructor><br/> | 208 | <%destructor><br/> |
194 | <kbd>code</kbd><br/> | 209 | <kbd>code</kbd><br/> |
195 | </%destructor> | 210 | </%destructor> |
196 | </code> | 211 | </code> |
197 | </a> | 212 | </a> |
198 | </dt> | 213 | </dt> |
199 | <dd> | 214 | <dd> |
200 | <p> | 215 | <p> |
201 | Provide the code for destructor. | 216 | Provide the code for destructor. |
202 | </p> | 217 | </p> |
203 | <blockquote class="qr_sample"> | 218 | <blockquote class="qr_sample"> |
204 | <a href="#qr___var" title="%%var description">%%var</a> type_t *tmp = 0;<br/> | 219 | <div> |
205 | <a href="#qr__constructor" title="<%constructor> description"><%constructor></a><br/> | 220 | <a href="#qr___var" title="%%var description">%%var</a> type_t *tmp = 0;<br/> |
206 | tmp = new type_t(type_t::option_1);<br/> | 221 | <a href="#qr__constructor" title="<%constructor> description"><%constructor></a><br/> |
207 | <a href="#qr__constructor" title="<%constructor> description"></%constructor></a><br/> | 222 | tmp = new type_t(type_t::option_1);<br/> |
208 | <em><a href="#qr__destructor" title="<%destructor> description"><%destructor></a><br/> | 223 | <a href="#qr__constructor" title="<%constructor> description"></%constructor></a><br/> |
209 | delete tmp;<br/> | 224 | <em><a href="#qr__destructor" title="<%destructor> description"><%destructor></a><br/> |
210 | <a href="#qr__destructor" title="<%destructor> description"></%destructor></a><br/></em> | 225 | delete tmp;<br/> |
226 | <a href="#qr__destructor" title="<%destructor> description"></%destructor></a><br/></em> | ||
227 | </div> | ||
211 | </blockquote> | 228 | </blockquote> |
212 | </dd> | 229 | </dd> |
213 | 230 | ||
214 | % /* %impl / %%impl */ | 231 | % /* %impl / %%impl */ |
215 | <dt> | 232 | <dt> |
216 | <a id="qr___impl" name="qr__impl" title="verbatim definition"> | 233 | <a id="qr___impl" name="qr__impl" title="verbatim definition"> |
217 | <code>%%impl <kbd>line of code</kbd></code> | 234 | <code>%%impl <kbd>line of code</kbd></code> |
218 | </a> | 235 | </a> |
219 | </dt> | 236 | </dt> |
220 | <dt> | 237 | <dt> |
221 | <a id="qr__impl" name="qr__impl" title="verbatim definition"> | 238 | <a id="qr__impl" name="qr__impl" title="verbatim definition"> |
222 | <code> | 239 | <code> |
223 | <%impl><br/> | 240 | <%impl><br/> |
224 | <kbd>lines of code</kbd><br/> | 241 | <kbd>lines of code</kbd><br/> |
225 | </%impl> | 242 | </%impl> |
226 | </code> | 243 | </code> |
227 | </a> | 244 | </a> |
228 | </dt> | 245 | </dt> |
229 | <dd> | 246 | <dd> |
230 | <p> | 247 | <p> |
231 | Put the line(s) of code into the resulting <em>.cc</em> implementation file | 248 | Put the line(s) of code into the resulting <em>.cc</em> implementation file |
232 | before any members definitions. | 249 | before any members definitions. |
233 | </p> | 250 | </p> |
234 | <blockquote class="qr_sample"> | 251 | <blockquote class="qr_sample"> |
235 | <em><a href"#qr___impl" title="%%impl description">%%impl</a> #include <string.h><br/></em> | 252 | <div> |
236 | <a href="#qr__method" title="<%method ... %gt; description"><%method</a> void output_if_contains(const char *haystack,const char *needle) <a href="#qr__method" title="<%method ... %gt; description">%></a><br/> | 253 | <em><a href="#qr___impl" title="%%impl description">%%impl</a> #include <string.h><br/></em> |
237 | <a href="#qr__line" title="% description">%</a> if(strstr(haystack,needle)) {<br/> | 254 | <a href="#qr__method" title="<%method ... %gt; description"><%method</a> void output_if_contains(const char *haystack,const char *needle) <a href="#qr__method" title="<%method ... %gt; description">%></a><br/> |
238 | <a href="#qr__inline" title="<% ... %> description"><%</a> haystack <a href="#qr__inline" title="<% ... %> description">%></a><br/> | 255 | <a href="#qr__line" title="% description">%</a> if(strstr(haystack,needle)) {<br/> |
239 | <a href="#qr__line" title="% description">%</a> }<br/> | 256 | <a href="#qr__inline" title="<% ... %> description"><%</a> haystack <a href="#qr__inline" title="<% ... %> description">%></a><br/> |
240 | <a href="#qr__method" title="<%method ... %> description"></%method></a><br/> | 257 | <a href="#qr__line" title="% description">%</a> }<br/> |
241 | <em><a href="#qr__impl" title="<%impl> description"><%impl></a><br/> | 258 | <a href="#qr__method" title="<%method ... %> description"></%method></a><br/> |
242 | #include <konforka/exception.h> | 259 | <em><a href="#qr__impl" title="<%impl> description"><%impl></a><br/> |
243 | static const char *tokens[] = {<br/> | 260 | #include <konforka/exception.h> |
244 | "token 1", "token 2", "token 3"<br/> | 261 | static const char *tokens[] = {<br/> |
245 | };<br/> | 262 | "token 1", "token 2", "token 3"<br/> |
246 | <a href="#qr__impl" title="<%impl> description"></%impl></a><br/></em> | 263 | };<br/> |
247 | <a href="#qr__method" title="<%method ... %gt; description"><%method</a> void output_token(int toknum) <a href="#qr__method" title="<%method ... %gt; description">%></a><br/> | 264 | <a href="#qr__impl" title="<%impl> description"></%impl></a><br/></em> |
248 | <a href="#qr__code" title="<%code> description"><%code></a><br/> | 265 | <a href="#qr__method" title="<%method ... %gt; description"><%method</a> void output_token(int toknum) <a href="#qr__method" title="<%method ... %gt; description">%></a><br/> |
249 | if(toknum<0 || toknum>=(sizeof(tokens)/sizeof(*tokens)))<br/> | 266 | <a href="#qr__code" title="<%code> description"><%code></a><br/> |
250 | throw konforka::exception(CODEPOINT,"out of bounds");<br/> | 267 | if(toknum<0 || toknum>=(sizeof(tokens)/sizeof(*tokens)))<br/> |
251 | <a href="#qr__code" title="<%code> description"></%code></a><br/> | 268 | throw konforka::exception(CODEPOINT,"out of bounds");<br/> |
252 | <a href="#qr__inline" title="<% ... %> description"><%</a> tokens[toknum] <a href="#qr__inline" title="<% ... %> description">%></a><br/> | 269 | <a href="#qr__code" title="<%code> description"></%code></a><br/> |
253 | <a href="#qr__method" title="<%method ... %> description"></%method></a><br/> | 270 | <a href="#qr__inline" title="<% ... %> description"><%</a> tokens[toknum] <a href="#qr__inline" title="<% ... %> description">%></a><br/> |
271 | <a href="#qr__method" title="<%method ... %> description"></%method></a><br/> | ||
272 | </div> | ||
254 | </blockquote> | 273 | </blockquote> |
255 | </dd> | 274 | </dd> |
256 | 275 | ||
257 | % /* %method */ | 276 | % /* %method */ |
258 | <dt> | 277 | <dt> |
259 | <a id="qr__method" name="qr__method" title="member function definition"> | 278 | <a id="qr__method" name="qr__method" title="member function definition"> |
260 | <code> | 279 | <code> |
261 | <%method <kbd>return_type_t</kbd> <kbd>member_name</kbd>(<kbd>args,...</kbd>) %><br/> | 280 | <%method <kbd>return_type_t</kbd> <kbd>member_name</kbd>(<kbd>args,...</kbd>) %><br/> |
262 | <kbd>code</kbd><br/> | 281 | <kbd>code</kbd><br/> |
263 | </%method> | 282 | </%method> |
264 | </code> | 283 | </code> |
265 | </a> | 284 | </a> |
266 | </dt> | 285 | </dt> |
267 | <dd> | 286 | <dd> |
268 | <p> | 287 | <p> |
269 | Define the member function. Essentially equivalent to <code><a href="#qr__codemethod" title="<%codemethod ... %> description" class="internal"><%codemethod</a> <kbd>...</kbd> <a href="#qr__codemethod" title="<%codemethod ... %> description" class="internal">%></a><a href="#qr__output" title="<%output> description" class="internal"><%output></a> <kbd>...</kbd> <a href="#qr__output" title="<%output> description" class="internal"></%output></a><a href="#qr__codemethod" title="<%codemethod ... %> description" class="internal"></%codemethod></a></code>. | 288 | Define the member function. Essentially equivalent to <code><a href="#qr__codemethod" title="<%codemethod ... %> description" class="internal"><%codemethod</a> <kbd>...</kbd> <a href="#qr__codemethod" title="<%codemethod ... %> description" class="internal">%></a><a href="#qr__output" title="<%output> description" class="internal"><%output></a> <kbd>...</kbd> <a href="#qr__output" title="<%output> description" class="internal"></%output></a><a href="#qr__codemethod" title="<%codemethod ... %> description" class="internal"></%codemethod></a></code>. |
270 | </p> | 289 | </p> |
271 | <blockquote class="qr_sample"> | 290 | <blockquote class="qr_sample"> |
272 | <em><a href="#qr__method" title="<%method ... %> description"><%method</a> void emphasized(const char *t) <a href="#qr__method" title="<%method ... %> description">%></a><br/> | 291 | <div> |
273 | <em><a href="#qr__inline" title="<% ... %> description"><%</a> t <a href="#qr__inline" title="<% ... %> description">%></a></em><br/> | 292 | <em><a href="#qr__method" title="<%method ... %> description"><%method</a> void emphasized(const char *t) <a href="#qr__method" title="<%method ... %> description">%></a><br/> |
274 | <a href="#qr__codemethod" title="<%codemethod ... %> description"></%method></a><br/></em> | 293 | <em><a href="#qr__inline" title="<% ... %> description"><%</a> t <a href="#qr__inline" title="<% ... %> description">%></a></em><br/> |
275 | <a href="#qr__line" title="% description">%</a> emphasized("emphasized text"); | 294 | <a href="#qr__codemethod" title="<%codemethod ... %> description"></%method></a><br/></em> |
295 | <a href="#qr__line" title="% description">%</a> emphasized("emphasized text"); | ||
296 | </div> | ||
276 | </blockquote> | 297 | </blockquote> |
277 | </dd> | 298 | </dd> |
278 | 299 | ||
279 | % /* %output */ | 300 | % /* %output */ |
280 | <dt> | 301 | <dt> |
281 | <a id="qr__output" name="qr__output" title="switching to output mode"> | 302 | <a id="qr__output" name="qr__output" title="switching to output mode"> |
282 | <code> | 303 | <code> |
283 | <%output> <kbd>...</kbd> </%output> | 304 | <%output> <kbd>...</kbd> </%output> |
284 | </code> | 305 | </code> |
285 | </a> | 306 | </a> |
286 | </dt> | 307 | </dt> |
287 | <dd> | 308 | <dd> |
288 | <p> | 309 | <p> |
289 | Escape from the code mode to output mode. Opposite to <code><a href="#qr__code" title="<%code> description"><%code></a></code>. Roughly the same as <code><a href="#qr__code" title="<%code> description"></%code></a> <kbd>...</kbd> <a href="#qr__code" title="<%code> description"><%code></a></code> (note the reverse order), but more self-explanatory and applies to more cases. | 310 | Escape from the code mode to output mode. Opposite to <code><a href="#qr__code" title="<%code> description"><%code></a></code>. Roughly the same as <code><a href="#qr__code" title="<%code> description"></%code></a> <kbd>...</kbd> <a href="#qr__code" title="<%code> description"><%code></a></code> (note the reverse order), but more self-explanatory and applies to more cases. |
290 | </p> | 311 | </p> |
291 | <blockquote class="qr_sample"> | 312 | <blockquote class="qr_sample"> |
292 | <a href="#qr__codemethod" title="<%codemethod ... %> description"><%codemethod</a> void count() <a href="#qr__codemethod" title="<%codemethod ... > description">%></a><br/> | 313 | <div> |
293 | for(int t=0;t<10;t++) {<br/> | 314 | <a href="#qr__codemethod" title="<%codemethod ... %> description"><%codemethod</a> void count() <a href="#qr__codemethod" title="<%codemethod ... > description">%></a><br/> |
294 | <em> <a href="#qr__output" title="<%output> descrption"><%output></a><br/> | 315 | for(int t=0;t<10;t++) {<br/> |
295 | Here is the way we count.<br/><br/> | 316 | <em> <a href="#qr__output" title="<%output> descrption"><%output></a><br/> |
296 | Just saying out loud: <a href="#qr__inline" title="<% ... %> description"><%</a> t <a href="#qr__inline" title="<% ... %> description">%></a><br/><br/> | 317 | Here is the way we count.<br/><br/> |
297 | <a href="#qr__output" title="<%output> descrption"></%output></a><br/></em> | 318 | Just saying out loud: <a href="#qr__inline" title="<% ... %> description"><%</a> t <a href="#qr__inline" title="<% ... %> description">%></a><br/><br/> |
298 | <a href="#qr__codemethod" title="</%codemethod ... %> description"></%codemethod></a><br/> | 319 | <a href="#qr__output" title="<%output> descrption"></%output></a><br/></em> |
299 | <a href="#qr__line" title="% description">%</a> count(); | 320 | <a href="#qr__codemethod" title="</%codemethod ... %> description"></%codemethod></a><br/> |
321 | <a href="#qr__line" title="% description">%</a> count(); | ||
322 | </div> | ||
300 | </blockquote> | 323 | </blockquote> |
301 | </dd> | 324 | </dd> |
302 | 325 | ||
303 | % /* %%pragma */ | 326 | % /* %%pragma */ |
304 | <dt> | 327 | <dt> |
305 | <a id="qr___pragma" name="qr___pragma" title="pragma"> | 328 | <a id="qr___pragma" name="qr___pragma" title="pragma"> |
306 | <code> | 329 | <code> |
307 | %%pragma <kbd>pragma_name</kbd><br/> | 330 | %%pragma <kbd>pragma_name</kbd><br/> |
308 | %%pragma <kbd>pragma_name</kbd>=<kbd>pragma_value</kbd> | 331 | %%pragma <kbd>pragma_name</kbd>=<kbd>pragma_value</kbd> |
309 | </code> | 332 | </code> |
310 | </a> | 333 | </a> |
311 | </dt> | 334 | </dt> |
312 | <dd> | 335 | <dd> |
313 | <p>provide pseudo instructions to the preprocessor. At this time only pragma | 336 | <p>provide pseudo instructions to the preprocessor. At this time only pragma |
314 | named <code>main</code> is defined, which instructs preprocessor to discard | 337 | named <code>main</code> is defined, which instructs preprocessor to discard |
315 | the 'main' member that would be generated for the component and call the | 338 | the 'main' member that would be generated for the component and call the |
316 | <code>main</code> member of the named base class.</p> | 339 | <code>main</code> member of the named base class.</p> |
317 | <blockquote class="qr_sample"> | 340 | <blockquote class="qr_sample"> |
318 | <a href="#qr___derive" title="%%derive description">%%derive</a> pagelayout = "/ancestry/page_layout.chtml";<br/> | 341 | <div> |
319 | <em><a href="#qr___pragma" title="%%pragma description">%%pragma</a> main=pagelayout</em> | 342 | <a href="#qr___derive" title="%%derive description">%%derive</a> pagelayout = "/ancestry/page_layout.chtml";<br/> |
343 | <em><a href="#qr___pragma" title="%%pragma description">%%pragma</a> main=pagelayout</em> | ||
344 | </div> | ||
320 | </blockquote> | 345 | </blockquote> |
321 | </dd> | 346 | </dd> |
322 | 347 | ||
323 | % /* %%var */ | 348 | % /* %%var */ |
324 | <dt> | 349 | <dt> |
325 | <a id="qr___var" name="qr___var" title="member variable declaration"> | 350 | <a id="qr___var" name="qr___var" title="member variable declaration"> |
326 | <code>%%var <kbd>type_t</kbd> <kbd>varname</kbd>;<br/> | 351 | <code>%%var <kbd>type_t</kbd> <kbd>varname</kbd>;</code><br/> |
327 | <code>%%var <kbd>type_t</kbd> <kbd>varname</kbd> = <kbd>initalizer</kbd>;<br/> | 352 | <code>%%var <kbd>type_t</kbd> <kbd>varname</kbd> = <kbd>initalizer</kbd>;</code><br/> |
328 | </a> | 353 | </a> |
329 | </dt> | 354 | </dt> |
330 | <dd> | 355 | <dd> |
331 | <p> | 356 | <p> |
332 | Define the member variable with optional default value (suitable for | 357 | Define the member variable with optional default value (suitable for |
333 | putting into the <code>: <kbd>varname</kbd>(<kbd>initializer</kbd>)</code> | 358 | putting into the <code>: <kbd>varname</kbd>(<kbd>initializer</kbd>)</code> |
334 | part of the c++ constructor. | 359 | part of the c++ constructor. |
335 | </p> | 360 | </p> |
336 | <blockquote class="qr_sample"> | 361 | <blockquote class="qr_sample"> |
337 | <em><a href="#qr___var" title="%%var description">%%var</a> std::string strval = "default value";<br/> | 362 | <div> |
338 | <a href="#qr___var" title="%%var description">%%var</a> int usecount = 0;<br/> | 363 | <em><a href="#qr___var" title="%%var description">%%var</a> std::string strval = "default value";<br/> |
339 | <a href="#qr___var" title="%%var description">%%var</a> int whatnot;</em> | 364 | <a href="#qr___var" title="%%var description">%%var</a> int usecount = 0;<br/> |
365 | <a href="#qr___var" title="%%var description">%%var</a> int whatnot;</em> | ||
366 | </div> | ||
340 | </blockquote> | 367 | </blockquote> |
341 | </dd> | 368 | </dd> |
342 | 369 | ||
343 | </dl> | 370 | </dl> |
344 | </%method> | 371 | </%method> |