102 Protected method to dump a NoneType object. |
102 Protected method to dump a NoneType object. |
103 |
103 |
104 @param value value to be dumped (None) (ignored) |
104 @param value value to be dumped (None) (ignored) |
105 @param indent indentation level for prettier output (integer) |
105 @param indent indentation level for prettier output (integer) |
106 """ |
106 """ |
107 self._write('%s<none />' % (" " * indent)) |
107 self._write('{0}<none />'.format(" " * indent)) |
108 |
108 |
109 def _write_int(self, value, indent): |
109 def _write_int(self, value, indent): |
110 """ |
110 """ |
111 Protected method to dump an int object. |
111 Protected method to dump an int object. |
112 |
112 |
113 @param value value to be dumped (integer) |
113 @param value value to be dumped (integer) |
114 @param indent indentation level for prettier output (integer) |
114 @param indent indentation level for prettier output (integer) |
115 """ |
115 """ |
116 self._write('%s<int>%s</int>' % (" " * indent, value)) |
116 self._write('{0}<int>{1}</int>'.format(" " * indent, value)) |
117 |
117 |
118 def _write_bool(self, value, indent): |
118 def _write_bool(self, value, indent): |
119 """ |
119 """ |
120 Protected method to dump a bool object. |
120 Protected method to dump a bool object. |
121 |
121 |
122 @param value value to be dumped (boolean) |
122 @param value value to be dumped (boolean) |
123 @param indent indentation level for prettier output (integer) |
123 @param indent indentation level for prettier output (integer) |
124 """ |
124 """ |
125 self._write('%s<bool>%s</bool>' % (" " * indent, value)) |
125 self._write('{0}<bool>{1}</bool>'.format(" " * indent, value)) |
126 |
126 |
127 def _write_float(self, value, indent): |
127 def _write_float(self, value, indent): |
128 """ |
128 """ |
129 Protected method to dump a float object. |
129 Protected method to dump a float object. |
130 |
130 |
131 @param value value to be dumped (float) |
131 @param value value to be dumped (float) |
132 @param indent indentation level for prettier output (integer) |
132 @param indent indentation level for prettier output (integer) |
133 """ |
133 """ |
134 self._write('%s<float>%s</float>' % (" " * indent, value)) |
134 self._write('{0}<float>{1}</float>'.format(" " * indent, value)) |
135 |
135 |
136 def _write_complex(self, value, indent): |
136 def _write_complex(self, value, indent): |
137 """ |
137 """ |
138 Protected method to dump a complex object. |
138 Protected method to dump a complex object. |
139 |
139 |
140 @param value value to be dumped (complex) |
140 @param value value to be dumped (complex) |
141 @param indent indentation level for prettier output (integer) |
141 @param indent indentation level for prettier output (integer) |
142 """ |
142 """ |
143 self._write('%s<complex>%s %s</complex>' % \ |
143 self._write('{0}<complex>{1} {2}</complex>'.format( |
144 (" " * indent, value.real, value.imag)) |
144 " " * indent, value.real, value.imag)) |
145 |
145 |
146 def _write_string(self, value, indent): |
146 def _write_string(self, value, indent): |
147 """ |
147 """ |
148 Protected method to dump a str object. |
148 Protected method to dump a str object. |
149 |
149 |
150 @param value value to be dumped (string) |
150 @param value value to be dumped (string) |
151 @param indent indentation level for prettier output (integer) |
151 @param indent indentation level for prettier output (integer) |
152 """ |
152 """ |
153 self._write('%s<string>%s</string>' % (" " * indent, self.escape(value))) |
153 self._write('{0}<string>{1}</string>'.format(" " * indent, self.escape(value))) |
154 |
154 |
155 def _write_bytes(self, value, indent): |
155 def _write_bytes(self, value, indent): |
156 """ |
156 """ |
157 Protected method to dump a bytes object. |
157 Protected method to dump a bytes object. |
158 |
158 |
159 @param value value to be dumped (bytes) |
159 @param value value to be dumped (bytes) |
160 @param indent indentation level for prettier output (integer) |
160 @param indent indentation level for prettier output (integer) |
161 """ |
161 """ |
162 self._write('%s<bytes>%s</bytes>' % ( |
162 self._write('{0}<bytes>{1}</bytes>'.format( |
163 " " * indent, ",".join(["%d" % b for b in value]))) |
163 " " * indent, ",".join(["{0:d}".format(b) for b in value]))) |
164 |
164 |
165 def _write_bytearray(self, value, indent): |
165 def _write_bytearray(self, value, indent): |
166 """ |
166 """ |
167 Protected method to dump a bytearray object. |
167 Protected method to dump a bytearray object. |
168 |
168 |
169 @param value value to be dumped (bytearray) |
169 @param value value to be dumped (bytearray) |
170 @param indent indentation level for prettier output (integer) |
170 @param indent indentation level for prettier output (integer) |
171 """ |
171 """ |
172 self._write('%s<bytearray>%s</bytearray>' % ( |
172 self._write('{0}<bytearray>{1}</bytearray>'.format( |
173 " " * indent, ",".join(["%d" % b for b in value]))) |
173 " " * indent, ",".join(["{0:d}".format(b) for b in value]))) |
174 |
174 |
175 def _write_tuple(self, value, indent): |
175 def _write_tuple(self, value, indent): |
176 """ |
176 """ |
177 Protected method to dump a tuple object. |
177 Protected method to dump a tuple object. |
178 |
178 |
179 @param value value to be dumped (tuple) |
179 @param value value to be dumped (tuple) |
180 @param indent indentation level for prettier output (integer) |
180 @param indent indentation level for prettier output (integer) |
181 """ |
181 """ |
182 self._write('%s<tuple>' % (" " * indent)) |
182 self._write('{0}<tuple>'.format(" " * indent)) |
183 nindent = indent + 1 |
183 nindent = indent + 1 |
184 for elem in value: |
184 for elem in value: |
185 self._writeBasics(elem, nindent) |
185 self._writeBasics(elem, nindent) |
186 self._write('%s</tuple>' % (" " * indent)) |
186 self._write('{0}</tuple>'.format(" " * indent)) |
187 |
187 |
188 def _write_list(self, value, indent): |
188 def _write_list(self, value, indent): |
189 """ |
189 """ |
190 Protected method to dump a list object. |
190 Protected method to dump a list object. |
191 |
191 |
192 @param value value to be dumped (list) |
192 @param value value to be dumped (list) |
193 @param indent indentation level for prettier output (integer) |
193 @param indent indentation level for prettier output (integer) |
194 """ |
194 """ |
195 self._write('%s<list>' % (" " * indent)) |
195 self._write('{0}<list>'.format(" " * indent)) |
196 nindent = indent + 1 |
196 nindent = indent + 1 |
197 for elem in value: |
197 for elem in value: |
198 self._writeBasics(elem, nindent) |
198 self._writeBasics(elem, nindent) |
199 self._write('%s</list>' % (" " * indent)) |
199 self._write('{0}</list>'.format(" " * indent)) |
200 |
200 |
201 def _write_dictionary(self, value, indent): |
201 def _write_dictionary(self, value, indent): |
202 """ |
202 """ |
203 Protected method to dump a dict object. |
203 Protected method to dump a dict object. |
204 |
204 |
205 @param value value to be dumped (dictionary) |
205 @param value value to be dumped (dictionary) |
206 @param indent indentation level for prettier output (integer) |
206 @param indent indentation level for prettier output (integer) |
207 """ |
207 """ |
208 self._write('%s<dict>' % (" " * indent)) |
208 self._write('{0}<dict>'.format(" " * indent)) |
209 nindent1 = indent + 1 |
209 nindent1 = indent + 1 |
210 nindent2 = indent + 2 |
210 nindent2 = indent + 2 |
211 keys = sorted(list(value.keys())) |
211 keys = sorted(list(value.keys())) |
212 for key in keys: |
212 for key in keys: |
213 self._write('%s<key>' % (" " * nindent1)) |
213 self._write('{0}<key>'.format(" " * nindent1)) |
214 self._writeBasics(key, nindent2) |
214 self._writeBasics(key, nindent2) |
215 self._write('%s</key>' % (" " * nindent1)) |
215 self._write('{0}</key>'.format(" " * nindent1)) |
216 self._write('%s<value>' % (" " * nindent1)) |
216 self._write('{0}<value>'.format(" " * nindent1)) |
217 self._writeBasics(value[key], nindent2) |
217 self._writeBasics(value[key], nindent2) |
218 self._write('%s</value>' % (" " * nindent1)) |
218 self._write('{0}</value>'.format(" " * nindent1)) |
219 self._write('%s</dict>' % (" " * indent)) |
219 self._write('{0}</dict>'.format(" " * indent)) |
220 |
220 |
221 def _write_set(self, value, indent): |
221 def _write_set(self, value, indent): |
222 """ |
222 """ |
223 Protected method to dump a set object. |
223 Protected method to dump a set object. |
224 |
224 |
225 @param value value to be dumped (set) |
225 @param value value to be dumped (set) |
226 @param indent indentation level for prettier output (integer) |
226 @param indent indentation level for prettier output (integer) |
227 """ |
227 """ |
228 self._write('%s<set>' % (" " * indent)) |
228 self._write('{0}<set>'.format(" " * indent)) |
229 nindent = indent + 1 |
229 nindent = indent + 1 |
230 for elem in value: |
230 for elem in value: |
231 self._writeBasics(elem, nindent) |
231 self._writeBasics(elem, nindent) |
232 self._write('%s</set>' % (" " * indent)) |
232 self._write('{0}</set>'.format(" " * indent)) |
233 |
233 |
234 def _write_frozenset(self, value, indent): |
234 def _write_frozenset(self, value, indent): |
235 """ |
235 """ |
236 Protected method to dump a frozenset object. |
236 Protected method to dump a frozenset object. |
237 |
237 |
238 @param value value to be dumped (frozenset) |
238 @param value value to be dumped (frozenset) |
239 @param indent indentation level for prettier output (integer) |
239 @param indent indentation level for prettier output (integer) |
240 """ |
240 """ |
241 self._write('%s<frozenset>' % (" " * indent)) |
241 self._write('{0}<frozenset>'.format(" " * indent)) |
242 nindent = indent + 1 |
242 nindent = indent + 1 |
243 for elem in value: |
243 for elem in value: |
244 self._writeBasics(elem, nindent) |
244 self._writeBasics(elem, nindent) |
245 self._write('%s</frozenset>' % (" " * indent)) |
245 self._write('{0}</frozenset>'.format(" " * indent)) |
246 |
246 |
247 def _write_unimplemented(self, value, indent): |
247 def _write_unimplemented(self, value, indent): |
248 """ |
248 """ |
249 Protected method to dump a type, that has no special method. |
249 Protected method to dump a type, that has no special method. |
250 |
250 |
251 @param value value to be dumped (any pickleable object) |
251 @param value value to be dumped (any pickleable object) |
252 @param indent indentation level for prettier output (integer) |
252 @param indent indentation level for prettier output (integer) |
253 """ |
253 """ |
254 self._write('%s<pickle method="pickle" encoding="base64">%s</pickle>' % \ |
254 self._write('{0}<pickle method="pickle" encoding="base64">{1}</pickle>'.format( |
255 (" " * indent, str(base64.b64encode(pickle.dumps(value)), "ASCII"))) |
255 " " * indent, str(base64.b64encode(pickle.dumps(value)), "ASCII"))) |