Module t.p.reflect

Part of twisted.python View Source

Standardized versions of various cool and/or strange things that you can do with Python's reflection capabilities.
Class Settable A mixin class for syntactic sugar. Lets you assign attributes by
Class AccessorType Metaclass that generates properties automatically.
Class PropertyAccessor A mixin class for Python 2.2 that uses AccessorType.
Class Accessor Extending this class will give you explicit accessor methods; a
Class Summer Extend from this class to get the capability to maintain 'related
Class QueueMethod I represent a method that doesn't exist yet.
Function funcinfo this is more documentation for myself than useful code.
Function fullFuncName Undocumented
Function qual Return full import path of a class.
Function getcurrent Undocumented
Function getClass Return the class or type of object 'obj'.
Function isinst Undocumented
Function namedModule Return a module given its name.
Function namedObject Get a fully named module-global object.
Function namedAny Get a fully named package, module, module-global object, or attribute.
Function _reclass Undocumented
Function macro macro(name, source, **identifiers)
Function _determineClass Undocumented
Function _determineClassName Undocumented
Function safe_repr safe_repr(anything) -> string
Function safe_str safe_str(anything) -> string
Function allYourBase allYourBase(classObj, baseClass=None) -> list of all base
Function accumulateBases Undocumented
Function prefixedMethodNames A list of method names with a given prefix in a given class.
Function addMethodNamesToDict addMethodNamesToDict(classObj, dict, prefix, baseClass=None) -> dict
Function prefixedMethods A list of methods with a given prefix on a given instance.
Function accumulateMethods accumulateMethods(instance, dict, prefix)
Function accumulateClassDict Accumulate all attributes of a given name in a class heirarchy into a single dictionary.
Function accumulateClassList Accumulate all attributes of a given name in a class heirarchy into a single list.
Function isSame Undocumented
Function isLike Undocumented
Function modgrep Undocumented
Function isOfType Undocumented
Function findInstances Undocumented
Function objgrep An insanely CPU-intensive process for finding stuff.
Function _startswith Undocumented
Function filenameToModuleName Convert a name in the filesystem to the name of the Python module it is.
def funcinfo(function): (source)
this is more documentation for myself than useful code.
def fullFuncName(func): (source)
Undocumented
def qual(clazz): (source)
Return full import path of a class.
def getcurrent(clazz): (source)
Undocumented
def getClass(obj): (source)
Return the class or type of object 'obj'. Returns sensible result for oldstyle and newstyle instances and types.
def isinst(inst, clazz): (source)
Undocumented
def namedModule(name): (source)
Return a module given its name.
def namedObject(name): (source)
Get a fully named module-global object.
def namedAny(name): (source)
Get a fully named package, module, module-global object, or attribute.
def _reclass(clazz): (source)
Undocumented
def macro(name, filename, source, **identifiers): (source)

macro(name, source, **identifiers)

This allows you to create macro-like behaviors in python. See twisted.python.hook for an example of its usage.
def _determineClass(x): (source)
Undocumented
def _determineClassName(x): (source)
Undocumented
def safe_repr(o): (source)

safe_repr(anything) -> string

Returns a string representation of an object, or a string containing a traceback, if that object's __repr__ raised an exception.
def safe_str(o): (source)

safe_str(anything) -> string

Returns a string representation of an object, or a string containing a traceback, if that object's __str__ raised an exception.
def allYourBase(classObj, baseClass=None): (source)
allYourBase(classObj, baseClass=None) -> list of all base classes that are subclasses of baseClass, unless it is None, in which case all bases will be added.
def accumulateBases(classObj, l, baseClass=None): (source)
Undocumented
def prefixedMethodNames(classObj, prefix): (source)
A list of method names with a given prefix in a given class.
def addMethodNamesToDict(classObj, dict, prefix, baseClass=None): (source)

addMethodNamesToDict(classObj, dict, prefix, baseClass=None) -> dict this goes through 'classObj' (and its bases) and puts method names starting with 'prefix' in 'dict' with a value of 1. if baseClass isn't None, methods will only be added if classObj is-a baseClass

If the class in question has the methods 'prefix_methodname' and 'prefix_methodname2', the resulting dict should look something like: {"methodname": 1, "methodname2": 1}.
def prefixedMethods(obj, prefix=''): (source)
A list of methods with a given prefix on a given instance.
def accumulateMethods(obj, dict, prefix='', curClass=None): (source)
accumulateMethods(instance, dict, prefix) I recurse through the bases of instance.__class__, and add methods beginning with 'prefix' to 'dict', in the form of {'methodname':*instance*method_object}.
def accumulateClassDict(classObj, attr, adict, baseClass=None): (source)

Accumulate all attributes of a given name in a class heirarchy into a single dictionary.

Assuming all class attributes of this name are dictionaries. If any of the dictionaries being accumulated have the same key, the one highest in the class heirarchy wins. (XXX: If "higest" means "closest to the starting class".)

Ex:

| class Soy: | properties = {"taste": "bland"} | | class Plant: | properties = {"colour": "green"} | | class Seaweed(Plant): | pass | | class Lunch(Soy, Seaweed): | properties = {"vegan": 1 } | | dct = {} | | accumulateClassDict(Lunch, "properties", dct) | | print dct

{"taste": "bland", "colour": "green", "vegan": 1}
def accumulateClassList(classObj, attr, listObj, baseClass=None): (source)

Accumulate all attributes of a given name in a class heirarchy into a single list.

Assuming all class attributes of this name are lists.
def isSame(a, b): (source)
Undocumented
def isLike(a, b): (source)
Undocumented
def modgrep(goal): (source)
Undocumented
def isOfType(start, goal): (source)
Undocumented
def findInstances(start, t): (source)
Undocumented
def objgrep(start, goal, eq=isLike, path='', paths=None, seen=None, showUnknowns=0, maxDepth=None): (source)
An insanely CPU-intensive process for finding stuff.
def _startswith(s, sub): (source)
Undocumented
def filenameToModuleName(fn): (source)

Convert a name in the filesystem to the name of the Python module it is.

This is agressive about getting a module name back from a file; it will always return a string. Agressive means 'sometimes wrong'; it won't look at the Python path or try to do any error checking: don't use this method unless you already know that the filename you're talking about is a Python module.
API Documentation for twisted, generated by pydoctor.