##// END OF EJS Templates
* IPython/Extensions/ipipe.py: Rename XAttr to AttributeDetail...
* IPython/Extensions/ipipe.py: Rename XAttr to AttributeDetail and make it iterable (iterating over the attribute itself). Add two new magic strings for __xattrs__(): If the string starts with "-", the attribute will not be displayed in ibrowse's detail view (but it can still be iterated over). This makes it possible to add attributes that are large lists or generator methods to the detail view. Replace magic attribute names and _attrname() and _getattr() with "descriptors": For each type of magic attribute name there's a subclass of Descriptor: None -> SelfDescriptor(); "foo" -> AttributeDescriptor("foo"); "foo()" -> MethodDescriptor("foo"); "-foo" -> IterAttributeDescriptor("foo"); "-foo()" -> IterMethodDescriptor("foo"); foo() -> FunctionDescriptor(foo). Magic strings returned from __xattrs__() are still supported. * IPython/Extensions/ibrowse.py: If fetching the next row from the input fails in ibrowse.fetch(), the exception object is added as the last item and item fetching is canceled. This prevents ibrowse from aborting if e.g. a generator throws an exception midway through execution. * IPython/Extensions/ipipe.py: Turn ifile's properties mimetype and encoding into methods.

File last commit:

r115:4aa9cf31
r355:9c312a73
Show More
platutils.py
35 lines | 1.1 KiB | text/x-python | PythonLexer
# -*- coding: utf-8 -*-
""" Proxy module for accessing platform specific utility functions.
Importing this module should give you the implementations that are correct
for your operation system, from platutils_PLATFORMNAME module.
$Id: ipstruct.py 1005 2006-01-12 08:39:26Z fperez $
"""
#*****************************************************************************
# Copyright (C) 2001-2006 Fernando Perez <fperez@colorado.edu>
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#*****************************************************************************
from IPython import Release
__author__ = '%s <%s>' % Release.authors['Ville']
__license__ = Release.license
import os,sys
if os.name == 'posix':
from platutils_posix import *
elif sys.platform == 'win32':
from platutils_win32 import *
else:
from platutils_dummy import *
import warnings
warnings.warn("Platutils not available for platform '%s', some features may be missing" %
os.name)
del warnings