示例#1
0
 def after(self):
     schema = Interface.__class__(self.name, (Interface, ), self.fields)
     schema.__doc__ = self.info.text.strip()
     self.action(
         discriminator=('schema', self.id),
         callable=schema_registry.__setitem__,
         args=(self.id, schema),
     )
示例#2
0
def SimpleInterface(name, bases, attrs):
    modname = attrs.get('__module__')
    if modname:
        modname += '.autogenerated_interfaces'
    namespace = {'__module__': modname, '__qualname__': attrs.get('qualname')}
    zinterface = _ZInterface.__class__(name, (_ZInterface, ), namespace)
    # TODO: actually do the interface description here

    created = _InterfaceBase(name, bases, attrs, __zope_interface__=zinterface)
    return created
示例#3
0
def SimpleInterface(name, bases, attrs):
    modname = attrs.get('__module__')
    if modname:
        modname += '.autogenerated_interfaces'
    namespace = {'__module__': modname,
                 '__qualname__': attrs.get('qualname')}
    zinterface = _ZInterface.__class__(name, (_ZInterface,), namespace)
    # TODO: actually do the interface description here

    created = _InterfaceBase(name, bases, attrs, __zope_interface__=zinterface)
    return created
 def after(self):
     schema = Interface.__class__(
         self.name,
         (Interface, ),
         self.fields
         )
     schema.__doc__ = self.info.text.strip()
     self.action(
         discriminator=('schema', self.id),
         callable=schema_registry.__setitem__,
         args=(self.id, schema),
         )
示例#5
0
def _create_dynamic_interface(name=None, cache=None):
    if not name in cache:
        cache[name] = Interface.__class__(name=name)
    return cache[name]