##// END OF EJS Templates
Give subclasses of the Instance traitlet the option of overriding the klass variable to have a default klass....
Give subclasses of the Instance traitlet the option of overriding the klass variable to have a default klass. This makes it easy to construct traitlets for specific object types and default metadata. For example, we can have a traitlet for numpy arrays that gives default values for `to_json` and `from_json`: ```python def np_to_list(a): if a is not None: return a.tolist() def np_from_list(a): if a is not None: return np.array(a) class NDArray(Instance): klass = np.ndarray metadata = {'to_json': np_to_list, 'from_json': np_from_list} ``` Then the NDArray traitlet will by default have the klass and some custom metadata.

File last commit:

r12249:4563b2ee
r17238:24edb497
Show More
base.py
35 lines | 1.0 KiB | text/x-python | PythonLexer
"""
Basic post processor
"""
#-----------------------------------------------------------------------------
#Copyright (c) 2013, the IPython Development Team.
#
#Distributed under the terms of the Modified BSD License.
#
#The full license is in the file COPYING.txt, distributed with this software.
#-----------------------------------------------------------------------------
#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------
from ..utils.base import NbConvertBase
#-----------------------------------------------------------------------------
# Classes
#-----------------------------------------------------------------------------
class PostProcessorBase(NbConvertBase):
def __call__(self, input):
"""
See def postprocess() ...
"""
self.postprocess(input)
def postprocess(self, input):
"""
Post-process output from a writer.
"""
raise NotImplementedError('postprocess')