Lichen

Annotated lib/__builtins__/exception/io.py

336:8c75cdf1a764
2016-12-06 Paul Boddie Introduced stream classes employing C-level FILE pointers, changing the sys stdin, stdout and stderr objects to be instances of these stream classes. Added fread and fwrite support to the native functions. Added support for raising EOFError.
paul@6 1
#!/usr/bin/env python
paul@6 2
paul@6 3
"""
paul@6 4
Input/output exception objects.
paul@6 5
paul@331 6
Copyright (C) 2015, 2016 Paul Boddie <paul@boddie.org.uk>
paul@6 7
paul@6 8
This program is free software; you can redistribute it and/or modify it under
paul@6 9
the terms of the GNU General Public License as published by the Free Software
paul@6 10
Foundation; either version 3 of the License, or (at your option) any later
paul@6 11
version.
paul@6 12
paul@6 13
This program is distributed in the hope that it will be useful, but WITHOUT
paul@6 14
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
paul@6 15
FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
paul@6 16
details.
paul@6 17
paul@6 18
You should have received a copy of the GNU General Public License along with
paul@6 19
this program.  If not, see <http://www.gnu.org/licenses/>.
paul@6 20
"""
paul@6 21
paul@336 22
class EOFError(Exception):
paul@336 23
paul@336 24
    "An end-of-file error."
paul@336 25
paul@336 26
    pass
paul@331 27
paul@331 28
class IOError(Exception):
paul@331 29
paul@331 30
    "An input/output error."
paul@331 31
paul@331 32
    def __init__(self, value):
paul@331 33
paul@331 34
        "Initialise the exception with the given 'value'."
paul@331 35
paul@331 36
        self.value = value
paul@331 37
paul@6 38
class KeyboardInterrupt(Exception): pass
paul@6 39
paul@6 40
# vim: tabstop=4 expandtab shiftwidth=4