| OLD | NEW |
| 1 # Copyright (c) 2009, Google Inc. All rights reserved. | 1 # Copyright (c) 2009, Google Inc. All rights reserved. |
| 2 # Copyright (c) 2009 Apple Inc. All rights reserved. | 2 # Copyright (c) 2009 Apple Inc. All rights reserved. |
| 3 # | 3 # |
| 4 # Redistribution and use in source and binary forms, with or without | 4 # Redistribution and use in source and binary forms, with or without |
| 5 # modification, are permitted provided that the following conditions are | 5 # modification, are permitted provided that the following conditions are |
| 6 # met: | 6 # met: |
| 7 # | 7 # |
| 8 # * Redistributions of source code must retain the above copyright | 8 # * Redistributions of source code must retain the above copyright |
| 9 # notice, this list of conditions and the following disclaimer. | 9 # notice, this list of conditions and the following disclaimer. |
| 10 # * Redistributions in binary form must reproduce the above | 10 # * Redistributions in binary form must reproduce the above |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 26 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| 27 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 27 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| 28 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 28 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 29 | 29 |
| 30 import codecs | 30 import codecs |
| 31 import os | 31 import os |
| 32 import sys | 32 import sys |
| 33 | 33 |
| 34 | 34 |
| 35 # Simple class to split output between multiple destinations | 35 # Simple class to split output between multiple destinations |
| 36 class Tee(object): | 36 class Tee: |
| 37 | 37 |
| 38 def __init__(self, *files): | 38 def __init__(self, *files): |
| 39 self.files = files | 39 self.files = files |
| 40 | 40 |
| 41 # Callers should pass an already encoded string for writing. | 41 # Callers should pass an already encoded string for writing. |
| 42 def write(self, bytes_to_write): | 42 def write(self, bytes): |
| 43 for fh in self.files: | 43 for file in self.files: |
| 44 fh.write(bytes_to_write) | 44 file.write(bytes) |
| OLD | NEW |