E5XML/XMLWriterBase.py

changeset 412
569efd7f2716
parent 245
de5c4effc747
equal deleted inserted replaced
411:99409cddaaa9 412:569efd7f2716
46 Protected method used to do the real write operation. 46 Protected method used to do the real write operation.
47 47
48 @param s string to be written to the XML file 48 @param s string to be written to the XML file
49 @param newline flag indicating a linebreak 49 @param newline flag indicating a linebreak
50 """ 50 """
51 self.pf.write("%s%s" % (s, 51 self.pf.write("{0}{1}".format(s,
52 newline and "\n" or "")) 52 newline and "\n" or ""))
53 53
54 def writeXML(self): 54 def writeXML(self):
55 """ 55 """
56 Public method to write the XML to the file. 56 Public method to write the XML to the file.
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")))

eric ide

mercurial