##// END OF EJS Templates
Only refill readline history if it doesn't look like it's been changed.
Only refill readline history if it doesn't look like it's been changed.

File last commit:

r1459:8d08214a
r3481:4ac6b26f
Show More
file_like.py
66 lines | 1.7 KiB | text/x-python | PythonLexer
# encoding: utf-8
""" File like object that redirects its write calls to a given callback."""
__docformat__ = "restructuredtext en"
#-------------------------------------------------------------------------------
# Copyright (C) 2008 The IPython Development Team
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#-------------------------------------------------------------------------------
import sys
class FileLike(object):
""" FileLike object that redirects all write to a callback.
Only the write-related methods are implemented, as well as those
required to read a StringIO.
"""
closed = False
def __init__(self, write_callback):
self.write = write_callback
def flush(self):
""" This method is there for compatibility with other file-like
objects.
"""
pass
def close(self):
""" This method is there for compatibility with other file-like
objects.
"""
pass
def writelines(self, lines):
map(self.write, lines)
def isatty(self):
""" This method is there for compatibility with other file-like
objects.
"""
return False
def getvalue(self):
""" This method is there for compatibility with other file-like
objects.
"""
return ''
def reset(self):
""" This method is there for compatibility with other file-like
objects.
"""
pass
def truncate(self):
""" This method is there for compatibility with other file-like
objects.
"""
pass