Package gnue :: Package navigator :: Package external :: Package zope :: Package interface :: Module ro
[show private | hide private]

Module gnue.navigator.external.zope.interface.ro

Compute a resolution order for an object and it's bases

$Id: ro.py 25177 2004-06-02 13:17:31Z jim $
Function Summary
  _flatten(ob, result)
  mergeOrderings(orderings, seen)
Merge multiple orderings so that within-ordering order is preserved
  ro(object)
Compute a "resolution order" for an object

Function Details

_flatten(ob, result)

mergeOrderings(orderings, seen=None)

Merge multiple orderings so that within-ordering order is preserved

Orderings are constrained in such a way that if an object appears in two or more orderings, then the suffix that begins with the object must be in both orderings.

For example:
>>> _mergeOrderings([
... ['x', 'y', 'z'],
... ['q', 'z'],
... [1, 3, 5],
... ['z']
... ])
['x', 'y', 'q', 1, 3, 5, 'z']

ro(object)

Compute a "resolution order" for an object


GNUe Home

Private API

Developer's Corner