Back to index

python3.2  3.2.2
Public Member Functions | Public Attributes
encodings.idna.StreamWriter Class Reference
Inheritance diagram for encodings.idna.StreamWriter:
Inheritance graph
[legend]
Collaboration diagram for encodings.idna.StreamWriter:
Collaboration graph
[legend]

List of all members.

Public Member Functions

def encode
def decode
def write
def writelines
def reset
def seek
def __getattr__
def __enter__
def __exit__

Public Attributes

 stream
 errors

Detailed Description

Definition at line 270 of file idna.py.


Member Function Documentation

def codecs.StreamWriter.__enter__ (   self) [inherited]

Definition at line 389 of file codecs.py.

00389 
00390     def __enter__(self):
00391         return self

def codecs.StreamWriter.__exit__ (   self,
  type,
  value,
  tb 
) [inherited]

Definition at line 392 of file codecs.py.

00392 
00393     def __exit__(self, type, value, tb):
00394         self.stream.close()

Here is the caller graph for this function:

def codecs.StreamWriter.__getattr__ (   self,
  name,
  getattr = getattr 
) [inherited]
Inherit all other methods from the underlying stream.

Definition at line 383 of file codecs.py.

00383 
00384                     getattr=getattr):
00385 
00386         """ Inherit all other methods from the underlying stream.
00387         """
00388         return getattr(self.stream, name)

Here is the call graph for this function:

def encodings.idna.Codec.decode (   self,
  input,
  errors = 'strict' 
) [inherited]
Decodes the object input and returns a tuple (output
    object, length consumed).

    input must be an object which provides the bf_getreadbuf
    buffer slot. Python strings, buffer objects and memory
    mapped files are examples of objects providing this slot.

    errors defines the error handling to apply. It defaults to
    'strict' handling.

    The method may not store state in the Codec instance. Use
    StreamCodec for codecs which have to keep state in order to
    make encoding/decoding efficient.

    The decoder must be able to handle zero length input and
    return an empty object of the output object type in this
    situation.

Reimplemented from codecs.Codec.

Definition at line 170 of file idna.py.

00170 
00171     def decode(self, input, errors='strict'):
00172 
00173         if errors != 'strict':
00174             raise UnicodeError("Unsupported error handling "+errors)
00175 
00176         if not input:
00177             return "", 0
00178 
00179         # IDNA allows decoding to operate on Unicode strings, too.
00180         if not isinstance(input, bytes):
00181             # XXX obviously wrong, see #3232
00182             input = bytes(input)
00183         labels = input.split(b".")
00184 
00185         if labels and len(labels[-1]) == 0:
00186             trailing_dot = '.'
00187             del labels[-1]
00188         else:
00189             trailing_dot = ''
00190 
00191         result = []
00192         for label in labels:
00193             result.append(ToUnicode(label))
00194 
00195         return ".".join(result)+trailing_dot, len(input)

Here is the call graph for this function:

Here is the caller graph for this function:

def encodings.idna.Codec.encode (   self,
  input,
  errors = 'strict' 
) [inherited]
Encodes the object input and returns a tuple (output
    object, length consumed).

    errors defines the error handling to apply. It defaults to
    'strict' handling.

    The method may not store state in the Codec instance. Use
    StreamCodec for codecs which have to keep state in order to
    make encoding/decoding efficient.

    The encoder must be able to handle zero length input and
    return an empty object of the output object type in this
    situation.

Reimplemented from codecs.Codec.

Definition at line 147 of file idna.py.

00147 
00148     def encode(self, input, errors='strict'):
00149 
00150         if errors != 'strict':
00151             # IDNA is quite clear that implementations must be strict
00152             raise UnicodeError("unsupported error handling "+errors)
00153 
00154         if not input:
00155             return b'', 0
00156 
00157         result = bytearray()
00158         labels = dots.split(input)
00159         if labels and not labels[-1]:
00160             trailing_dot = b'.'
00161             del labels[-1]
00162         else:
00163             trailing_dot = b''
00164         for label in labels:
00165             if result:
00166                 # Join with U+002E
00167                 result.extend(b'.')
00168             result.extend(ToASCII(label))
00169         return bytes(result+trailing_dot), len(input)

Here is the call graph for this function:

Here is the caller graph for this function:

def codecs.StreamWriter.reset (   self) [inherited]
Flushes and resets the codec buffers used for keeping state.

    Calling this method should ensure that the data on the
    output is put into a clean state, that allows appending
    of new fresh data without having to rescan the whole
    stream to recover state.

Reimplemented in encodings.utf_16.StreamWriter, encodings.utf_32.StreamWriter, and encodings.utf_8_sig.StreamWriter.

Definition at line 365 of file codecs.py.

00365 
00366     def reset(self):
00367 
00368         """ Flushes and resets the codec buffers used for keeping state.
00369 
00370             Calling this method should ensure that the data on the
00371             output is put into a clean state, that allows appending
00372             of new fresh data without having to rescan the whole
00373             stream to recover state.
00374 
00375         """
00376         pass

Here is the caller graph for this function:

def codecs.StreamWriter.seek (   self,
  offset,
  whence = 0 
) [inherited]

Definition at line 377 of file codecs.py.

00377 
00378     def seek(self, offset, whence=0):
00379         self.stream.seek(offset, whence)
00380         if whence == 0 and offset == 0:
00381             self.reset()

Here is the call graph for this function:

Here is the caller graph for this function:

def codecs.StreamWriter.write (   self,
  object 
) [inherited]
Writes the object's contents encoded to self.stream.

Definition at line 351 of file codecs.py.

00351 
00352     def write(self, object):
00353 
00354         """ Writes the object's contents encoded to self.stream.
00355         """
00356         data, consumed = self.encode(object, self.errors)
00357         self.stream.write(data)

Here is the call graph for this function:

def codecs.StreamWriter.writelines (   self,
  list 
) [inherited]
Writes the concatenated list of strings to the stream
    using .write().

Definition at line 358 of file codecs.py.

00358 
00359     def writelines(self, list):
00360 
00361         """ Writes the concatenated list of strings to the stream
00362             using .write().
00363         """
00364         self.write(''.join(list))

Here is the call graph for this function:


Member Data Documentation

Definition at line 349 of file codecs.py.

Definition at line 348 of file codecs.py.


The documentation for this class was generated from the following file: