Class n.u.Expose(object):

Part of nevow.util View Source View In Hierarchy

Helper for exposing methods for various uses using a simple decorator-style callable.

Instances of this class can be called with one or more functions as positional arguments. The names of these functions will be added to a list on the class object of which they are methods.
Instance VariablesattributeNameThe attribute with which exposed methods will be tracked.
Line # Kind Name Docs
24 Method __init__ Undocumented
28 Method __call__ Add one or more functions to the set of exposed functions.
64 Method exposedMethodNames Return an iterator of the names of the methods which are exposed on the
75 Method get Retrieve an exposed method with the given name from the given instance.
def __init__(self, doc=None): (source)
Undocumented
def __call__(self, *funcObjs): (source)

Add one or more functions to the set of exposed functions.

This is a way to declare something about a class definition, similar to zope.interface.implements. Use it like this:

| magic = Expose('perform extra magic') | class Foo(Bar): | def twiddle(self, x, y): | ... | def frob(self, a, b): | ... | magic(twiddle, frob)

Later you can query the object:

| aFoo = Foo() | magic.get(aFoo, 'twiddle')(x=1, y=2)

The call to get will fail if the name it is given has not been exposed using magic.
ParametersfuncObjsOne or more function objects which will be exposed to the client.
ReturnsThe first of funcObjs.
def exposedMethodNames(self, instance): (source)
Return an iterator of the names of the methods which are exposed on the given instance.
def get(self, instance, methodName, default=_nodefault): (source)
Retrieve an exposed method with the given name from the given instance.
ReturnsA callable object for the named method assigned to the given instance.
RaisesUnexposedMethodErrorRaised if default is not specified and there is no exposed method with the given name.
API Documentation for Nevow, generated by pydoctor.