blob: 5ba43b52b340ddcf61692187808d3363c2c361c5 [file] [log] [blame]
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -04001<?xml version="1.0" encoding="ascii"?>
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3 "DTD/xhtml1-transitional.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5<head>
6 <title>apiclient.schema._SchemaToStruct</title>
7 <link rel="stylesheet" href="epydoc.css" type="text/css" />
8 <script type="text/javascript" src="epydoc.js"></script>
9</head>
10
11<body bgcolor="white" text="black" link="blue" vlink="#204080"
12 alink="#204080">
13<!-- ==================== NAVIGATION BAR ==================== -->
14<table class="navbar" border="0" width="100%" cellpadding="0"
15 bgcolor="#a0c0ff" cellspacing="0">
16 <tr valign="middle">
17
18 <!-- Tree link -->
19 <th>&nbsp;&nbsp;&nbsp;<a
20 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
21
22 <!-- Index link -->
23 <th>&nbsp;&nbsp;&nbsp;<a
24 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
25
26 <!-- Help link -->
27 <th>&nbsp;&nbsp;&nbsp;<a
28 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
29
30 <th class="navbar" width="100%"></th>
31 </tr>
32</table>
33<table width="100%" cellpadding="0" cellspacing="0">
34 <tr valign="top">
35 <td width="100%">
36 <span class="breadcrumbs">
37 <a href="apiclient-module.html">Package&nbsp;apiclient</a> ::
38 <a href="apiclient.schema-module.html">Module&nbsp;schema</a> ::
39 Class&nbsp;_SchemaToStruct
40 </span>
41 </td>
42 <td>
43 <table cellpadding="0" cellspacing="0">
44 <!-- hide/show private -->
45 <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
46 onclick="toggle_private();">hide&nbsp;private</a>]</span></td></tr>
47 <tr><td align="right"><span class="options"
48 >[<a href="frames.html" target="_top">frames</a
49 >]&nbsp;|&nbsp;<a href="apiclient.schema._SchemaToStruct-class.html"
50 target="_top">no&nbsp;frames</a>]</span></td></tr>
51 </table>
52 </td>
53 </tr>
54</table>
55<!-- ==================== CLASS DESCRIPTION ==================== -->
56<h1 class="epydoc">Class _SchemaToStruct</h1><p class="nomargin-top"><span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct">source&nbsp;code</a></span></p>
57<center>
Joe Gregorio37802c32013-08-06 12:24:05 -040058<center> <map id="uml_class_diagram_for_apiclien_40" name="uml_class_diagram_for_apiclien_40">
59<area shape="rect" id="node98" href="apiclient.schema._SchemaToStruct-class.html#__init__" title="Constructor." alt="" coords="17,39,237,57"/>
60<area shape="rect" id="node98" href="apiclient.schema._SchemaToStruct-class.html#emit" title="Add text as a line to the output." alt="" coords="17,57,237,76"/>
61<area shape="rect" id="node98" href="apiclient.schema._SchemaToStruct-class.html#emitBegin" title="Add text to the output, but with no line terminator." alt="" coords="17,76,237,95"/>
62<area shape="rect" id="node98" href="apiclient.schema._SchemaToStruct-class.html#emitEnd" title="Add text and comment to the output with line terminator." alt="" coords="17,95,237,113"/>
63<area shape="rect" id="node98" href="apiclient.schema._SchemaToStruct-class.html#indent" title="Increase indentation level." alt="" coords="17,113,237,132"/>
64<area shape="rect" id="node98" href="apiclient.schema._SchemaToStruct-class.html#undent" title="Decrease indentation level." alt="" coords="17,132,237,151"/>
65<area shape="rect" id="node98" href="apiclient.schema._SchemaToStruct-class.html#to_str" title="Prototype object based on the schema, in Python code with comments." alt="" coords="17,151,237,169"/>
66<area shape="rect" id="node1" href="apiclient.schema._SchemaToStruct-class.html" title="Convert schema to a prototype object." alt="" coords="5,6,248,175"/>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040067</map>
Joe Gregorio37802c32013-08-06 12:24:05 -040068 <img src="uml_class_diagram_for_apiclien_40.gif" alt='' usemap="#uml_class_diagram_for_apiclien_40" ismap="ismap" class="graph-without-title" />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040069</center>
70</center>
71<hr />
72<pre class="literalblock">
73Convert schema to a prototype object.
74
75</pre>
76
77<!-- ==================== INSTANCE METHODS ==================== -->
78<a name="section-InstanceMethods"></a>
79<table class="summary" border="1" cellpadding="3"
80 cellspacing="0" width="100%" bgcolor="white">
81<tr bgcolor="#70b0f0" class="table-header">
82 <td colspan="2" class="table-header">
83 <table border="0" cellpadding="0" cellspacing="0" width="100%">
84 <tr valign="top">
85 <td align="left"><span class="table-header">Instance Methods</span></td>
86 <td align="right" valign="top"
87 ><span class="options">[<a href="#section-InstanceMethods"
88 class="privatelink" onclick="toggle_private();"
89 >hide private</a>]</span></td>
90 </tr>
91 </table>
92 </td>
93</tr>
94<tr>
95 <td width="15%" align="right" valign="top" class="summary">
96 <span class="summary-type">&nbsp;</span>
97 </td><td class="summary">
98 <table width="100%" cellpadding="0" cellspacing="0" border="0">
99 <tr>
Joe Gregoriof4839b02012-09-06 13:47:24 -0400100 <td><span class="summary-sig"><a href="apiclient.schema._SchemaToStruct-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
101 <span class="summary-sig-arg">schema</span>,
102 <span class="summary-sig-arg">seen</span>,
103 <span class="summary-sig-arg">dent</span>=<span class="summary-sig-default">0</span>)</span><br />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400104 Constructor.</td>
105 <td align="right" valign="top">
Joe Gregoriof4839b02012-09-06 13:47:24 -0400106 <span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct.__init__">source&nbsp;code</a></span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400107
108 </td>
109 </tr>
110 </table>
111
112 </td>
113 </tr>
114<tr>
115 <td width="15%" align="right" valign="top" class="summary">
116 <span class="summary-type">&nbsp;</span>
117 </td><td class="summary">
118 <table width="100%" cellpadding="0" cellspacing="0" border="0">
119 <tr>
120 <td><span class="summary-sig"><a href="apiclient.schema._SchemaToStruct-class.html#emit" class="summary-sig-name">emit</a>(<span class="summary-sig-arg">self</span>,
121 <span class="summary-sig-arg">text</span>)</span><br />
122 Add text as a line to the output.</td>
123 <td align="right" valign="top">
124 <span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct.emit">source&nbsp;code</a></span>
125
126 </td>
127 </tr>
128 </table>
129
130 </td>
131 </tr>
132<tr>
133 <td width="15%" align="right" valign="top" class="summary">
134 <span class="summary-type">&nbsp;</span>
135 </td><td class="summary">
136 <table width="100%" cellpadding="0" cellspacing="0" border="0">
137 <tr>
138 <td><span class="summary-sig"><a href="apiclient.schema._SchemaToStruct-class.html#emitBegin" class="summary-sig-name">emitBegin</a>(<span class="summary-sig-arg">self</span>,
139 <span class="summary-sig-arg">text</span>)</span><br />
140 Add text to the output, but with no line terminator.</td>
141 <td align="right" valign="top">
142 <span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct.emitBegin">source&nbsp;code</a></span>
143
144 </td>
145 </tr>
146 </table>
147
148 </td>
149 </tr>
150<tr>
151 <td width="15%" align="right" valign="top" class="summary">
152 <span class="summary-type">&nbsp;</span>
153 </td><td class="summary">
154 <table width="100%" cellpadding="0" cellspacing="0" border="0">
155 <tr>
156 <td><span class="summary-sig"><a href="apiclient.schema._SchemaToStruct-class.html#emitEnd" class="summary-sig-name">emitEnd</a>(<span class="summary-sig-arg">self</span>,
157 <span class="summary-sig-arg">text</span>,
158 <span class="summary-sig-arg">comment</span>)</span><br />
159 Add text and comment to the output with line terminator.</td>
160 <td align="right" valign="top">
161 <span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct.emitEnd">source&nbsp;code</a></span>
162
163 </td>
164 </tr>
165 </table>
166
167 </td>
168 </tr>
169<tr>
170 <td width="15%" align="right" valign="top" class="summary">
171 <span class="summary-type">&nbsp;</span>
172 </td><td class="summary">
173 <table width="100%" cellpadding="0" cellspacing="0" border="0">
174 <tr>
175 <td><span class="summary-sig"><a name="indent"></a><span class="summary-sig-name">indent</span>(<span class="summary-sig-arg">self</span>)</span><br />
176 Increase indentation level.</td>
177 <td align="right" valign="top">
178 <span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct.indent">source&nbsp;code</a></span>
179
180 </td>
181 </tr>
182 </table>
183
184 </td>
185 </tr>
186<tr>
187 <td width="15%" align="right" valign="top" class="summary">
188 <span class="summary-type">&nbsp;</span>
189 </td><td class="summary">
190 <table width="100%" cellpadding="0" cellspacing="0" border="0">
191 <tr>
192 <td><span class="summary-sig"><a name="undent"></a><span class="summary-sig-name">undent</span>(<span class="summary-sig-arg">self</span>)</span><br />
193 Decrease indentation level.</td>
194 <td align="right" valign="top">
195 <span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct.undent">source&nbsp;code</a></span>
196
197 </td>
198 </tr>
199 </table>
200
201 </td>
202 </tr>
203<tr class="private">
204 <td width="15%" align="right" valign="top" class="summary">
205 <span class="summary-type">&nbsp;</span>
206 </td><td class="summary">
207 <table width="100%" cellpadding="0" cellspacing="0" border="0">
208 <tr>
209 <td><span class="summary-sig"><a href="apiclient.schema._SchemaToStruct-class.html#_to_str_impl" class="summary-sig-name" onclick="show_private();">_to_str_impl</a>(<span class="summary-sig-arg">self</span>,
210 <span class="summary-sig-arg">schema</span>)</span><br />
211 Prototype object based on the schema, in Python code with comments.</td>
212 <td align="right" valign="top">
213 <span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct._to_str_impl">source&nbsp;code</a></span>
214
215 </td>
216 </tr>
217 </table>
218
219 </td>
220 </tr>
221<tr>
222 <td width="15%" align="right" valign="top" class="summary">
223 <span class="summary-type">&nbsp;</span>
224 </td><td class="summary">
225 <table width="100%" cellpadding="0" cellspacing="0" border="0">
226 <tr>
227 <td><span class="summary-sig"><a href="apiclient.schema._SchemaToStruct-class.html#to_str" class="summary-sig-name">to_str</a>(<span class="summary-sig-arg">self</span>,
228 <span class="summary-sig-arg">from_cache</span>)</span><br />
229 Prototype object based on the schema, in Python code with comments.</td>
230 <td align="right" valign="top">
231 <span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct.to_str">source&nbsp;code</a></span>
232
233 </td>
234 </tr>
235 </table>
236
237 </td>
238 </tr>
239 <tr>
240 <td colspan="2" class="summary">
241 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
242 <code>__delattr__</code>,
243 <code>__format__</code>,
244 <code>__getattribute__</code>,
245 <code>__hash__</code>,
246 <code>__new__</code>,
247 <code>__reduce__</code>,
248 <code>__reduce_ex__</code>,
249 <code>__repr__</code>,
250 <code>__setattr__</code>,
251 <code>__sizeof__</code>,
252 <code>__str__</code>,
253 <code>__subclasshook__</code>
254 </p>
255 </td>
256 </tr>
257</table>
258<!-- ==================== PROPERTIES ==================== -->
259<a name="section-Properties"></a>
260<table class="summary" border="1" cellpadding="3"
261 cellspacing="0" width="100%" bgcolor="white">
262<tr bgcolor="#70b0f0" class="table-header">
263 <td colspan="2" class="table-header">
264 <table border="0" cellpadding="0" cellspacing="0" width="100%">
265 <tr valign="top">
266 <td align="left"><span class="table-header">Properties</span></td>
267 <td align="right" valign="top"
268 ><span class="options">[<a href="#section-Properties"
269 class="privatelink" onclick="toggle_private();"
270 >hide private</a>]</span></td>
271 </tr>
272 </table>
273 </td>
274</tr>
275 <tr>
276 <td colspan="2" class="summary">
277 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
278 <code>__class__</code>
279 </p>
280 </td>
281 </tr>
282</table>
283<!-- ==================== METHOD DETAILS ==================== -->
284<a name="section-MethodDetails"></a>
285<table class="details" border="1" cellpadding="3"
286 cellspacing="0" width="100%" bgcolor="white">
287<tr bgcolor="#70b0f0" class="table-header">
288 <td colspan="2" class="table-header">
289 <table border="0" cellpadding="0" cellspacing="0" width="100%">
290 <tr valign="top">
291 <td align="left"><span class="table-header">Method Details</span></td>
292 <td align="right" valign="top"
293 ><span class="options">[<a href="#section-MethodDetails"
294 class="privatelink" onclick="toggle_private();"
295 >hide private</a>]</span></td>
296 </tr>
297 </table>
298 </td>
299</tr>
300</table>
301<a name="__init__"></a>
302<div>
303<table class="details" border="1" cellpadding="3"
304 cellspacing="0" width="100%" bgcolor="white">
305<tr><td>
306 <table width="100%" cellpadding="0" cellspacing="0" border="0">
307 <tr valign="top"><td>
Joe Gregoriof4839b02012-09-06 13:47:24 -0400308 <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
309 <span class="sig-arg">schema</span>,
310 <span class="sig-arg">seen</span>,
311 <span class="sig-arg">dent</span>=<span class="sig-default">0</span>)</span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400312 <br /><em class="fname">(Constructor)</em>
313 </h3>
314 </td><td align="right" valign="top"
Joe Gregoriof4839b02012-09-06 13:47:24 -0400315 ><span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct.__init__">source&nbsp;code</a></span>&nbsp;
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400316 </td>
317 </tr></table>
318
319 <pre class="literalblock">
320Constructor.
321
322Args:
323 schema: object, Parsed JSON schema.
324 seen: list, List of names of schema already seen while parsing. Used to
325 handle recursive definitions.
326 dent: int, Initial indentation depth.
327
328</pre>
329 <dl class="fields">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400330 <dt>Decorators:</dt>
331 <dd><ul class="nomargin-top">
332 <li><code>@util.positional(3)</code></li>
333 </ul></dd>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400334 <dt>Overrides:
335 object.__init__
336 </dt>
337 </dl>
338</td></tr></table>
339</div>
340<a name="emit"></a>
341<div>
342<table class="details" border="1" cellpadding="3"
343 cellspacing="0" width="100%" bgcolor="white">
344<tr><td>
345 <table width="100%" cellpadding="0" cellspacing="0" border="0">
346 <tr valign="top"><td>
347 <h3 class="epydoc"><span class="sig"><span class="sig-name">emit</span>(<span class="sig-arg">self</span>,
348 <span class="sig-arg">text</span>)</span>
349 </h3>
350 </td><td align="right" valign="top"
351 ><span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct.emit">source&nbsp;code</a></span>&nbsp;
352 </td>
353 </tr></table>
354
355 <pre class="literalblock">
356Add text as a line to the output.
357
358Args:
359 text: string, Text to output.
360
361</pre>
362 <dl class="fields">
363 </dl>
364</td></tr></table>
365</div>
366<a name="emitBegin"></a>
367<div>
368<table class="details" border="1" cellpadding="3"
369 cellspacing="0" width="100%" bgcolor="white">
370<tr><td>
371 <table width="100%" cellpadding="0" cellspacing="0" border="0">
372 <tr valign="top"><td>
373 <h3 class="epydoc"><span class="sig"><span class="sig-name">emitBegin</span>(<span class="sig-arg">self</span>,
374 <span class="sig-arg">text</span>)</span>
375 </h3>
376 </td><td align="right" valign="top"
377 ><span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct.emitBegin">source&nbsp;code</a></span>&nbsp;
378 </td>
379 </tr></table>
380
381 <pre class="literalblock">
382Add text to the output, but with no line terminator.
383
384Args:
385 text: string, Text to output.
386
387
388</pre>
389 <dl class="fields">
390 </dl>
391</td></tr></table>
392</div>
393<a name="emitEnd"></a>
394<div>
395<table class="details" border="1" cellpadding="3"
396 cellspacing="0" width="100%" bgcolor="white">
397<tr><td>
398 <table width="100%" cellpadding="0" cellspacing="0" border="0">
399 <tr valign="top"><td>
400 <h3 class="epydoc"><span class="sig"><span class="sig-name">emitEnd</span>(<span class="sig-arg">self</span>,
401 <span class="sig-arg">text</span>,
402 <span class="sig-arg">comment</span>)</span>
403 </h3>
404 </td><td align="right" valign="top"
405 ><span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct.emitEnd">source&nbsp;code</a></span>&nbsp;
406 </td>
407 </tr></table>
408
409 <pre class="literalblock">
410Add text and comment to the output with line terminator.
411
412Args:
413 text: string, Text to output.
414 comment: string, Python comment.
415
416</pre>
417 <dl class="fields">
418 </dl>
419</td></tr></table>
420</div>
421<a name="_to_str_impl"></a>
422<div class="private">
423<table class="details" border="1" cellpadding="3"
424 cellspacing="0" width="100%" bgcolor="white">
425<tr><td>
426 <table width="100%" cellpadding="0" cellspacing="0" border="0">
427 <tr valign="top"><td>
428 <h3 class="epydoc"><span class="sig"><span class="sig-name">_to_str_impl</span>(<span class="sig-arg">self</span>,
429 <span class="sig-arg">schema</span>)</span>
430 </h3>
431 </td><td align="right" valign="top"
432 ><span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct._to_str_impl">source&nbsp;code</a></span>&nbsp;
433 </td>
434 </tr></table>
435
436 <pre class="literalblock">
437Prototype object based on the schema, in Python code with comments.
438
439Args:
440 schema: object, Parsed JSON schema file.
441
442Returns:
443 Prototype object based on the schema, in Python code with comments.
444
445</pre>
446 <dl class="fields">
447 </dl>
448</td></tr></table>
449</div>
450<a name="to_str"></a>
451<div>
452<table class="details" border="1" cellpadding="3"
453 cellspacing="0" width="100%" bgcolor="white">
454<tr><td>
455 <table width="100%" cellpadding="0" cellspacing="0" border="0">
456 <tr valign="top"><td>
457 <h3 class="epydoc"><span class="sig"><span class="sig-name">to_str</span>(<span class="sig-arg">self</span>,
458 <span class="sig-arg">from_cache</span>)</span>
459 </h3>
460 </td><td align="right" valign="top"
461 ><span class="codelink"><a href="apiclient.schema-pysrc.html#_SchemaToStruct.to_str">source&nbsp;code</a></span>&nbsp;
462 </td>
463 </tr></table>
464
465 <pre class="literalblock">
466Prototype object based on the schema, in Python code with comments.
467
468Args:
469 from_cache: callable(name, seen), Callable that retrieves an object
470 prototype for a schema with the given name. Seen is a list of schema
471 names already seen as we recursively descend the schema definition.
472
473Returns:
474 Prototype object based on the schema, in Python code with comments.
475 The lines of the code will all be properly indented.
476
477</pre>
478 <dl class="fields">
479 </dl>
480</td></tr></table>
481</div>
482<br />
483<!-- ==================== NAVIGATION BAR ==================== -->
484<table class="navbar" border="0" width="100%" cellpadding="0"
485 bgcolor="#a0c0ff" cellspacing="0">
486 <tr valign="middle">
487
488 <!-- Tree link -->
489 <th>&nbsp;&nbsp;&nbsp;<a
490 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
491
492 <!-- Index link -->
493 <th>&nbsp;&nbsp;&nbsp;<a
494 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
495
496 <!-- Help link -->
497 <th>&nbsp;&nbsp;&nbsp;<a
498 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
499
500 <th class="navbar" width="100%"></th>
501 </tr>
502</table>
503<table border="0" cellpadding="0" cellspacing="0" width="100%%">
504 <tr>
505 <td align="left" class="footer">
Joe Gregorio37802c32013-08-06 12:24:05 -0400506 Generated by Epydoc 3.0.1 on Tue Aug 6 12:16:44 2013
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400507 </td>
508 <td align="right" class="footer">
509 <a target="mainFrame" href="http://epydoc.sourceforge.net"
510 >http://epydoc.sourceforge.net</a>
511 </td>
512 </tr>
513</table>
514
515<script type="text/javascript">
516 <!--
517 // Private objects are initially displayed (because if
518 // javascript is turned off then we want them to be
519 // visible); but by default, we want to hide them. So hide
520 // them unless we have a cookie that says to show them.
521 checkCookie();
522 // -->
523</script>
524</body>
525</html>