# Path: wiring/interface.py
# class InterfaceComplianceError(Exception):
# class MissingAttributeError(InterfaceComplianceError):
# class MethodValidationError(InterfaceComplianceError):
# class Attribute(object):
# class Method(Attribute):
# class InterfaceMetaclass(type):
# class Interface(object):
#     def __init__(self, attribute_name):
#     def __str__(self):
#     def __init__(self, function, expected_argspec, observed_argspec):
#     def __str__(self):
#     def __init__(self, docstring=None):
#     def __repr__(self):
#     def __init__(self, argument_specification, docstring=None):
#     def __repr__(self):
#     def check_compliance(self, function):
#     def __new__(cls, interface_name, bases, attributes):
#     def _is_interface_class(cls, other_class):
#     def check_compliance(cls, instance):
# def get_implemented_interfaces(cls):
# def set_implemented_interfaces(cls, interfaces):
# def add_implemented_interfaces(cls, interfaces):
# def implements(*interfaces):
#     def wrapper(cls):
# def implements_only(*interfaces):
#     def wrapper(cls):
# def isimplementation(obj, interfaces):


import os
import threading
from wiring import interface
)


class IScope(interface.Interface):
    """
    Interface defining a :term:`scope` object.
    """

    def __getitem__(specification):
        """
        Returns a cached instance for given :term:`specification`. Raises
        `KeyError` if there is none.

        :raises:
            KeyError
        """

    def __setitem__(specification, instance):
        """
        Saves a cached `instance` for given :term:`specification`. If there was
        already a cached instance for this specification, it is overriden.
        """

    def __contains__(specification):
        """
        Returns `True` if there is cached instance for given
        :term:`specification` and `False` otherwise.
        """



# Path: wiring/interface.py
# class InterfaceComplianceError(Exception):
# class MissingAttributeError(InterfaceComplianceError):
# class MethodValidationError(InterfaceComplianceError):
# class Attribute(object):
# class Method(Attribute):
# class InterfaceMetaclass(type):
# class Interface(object):
#     def __init__(self, attribute_name):
#     def __str__(self):
#     def __init__(self, function, expected_argspec, observed_argspec):
#     def __str__(self):
#     def __init__(self, docstring=None):
#     def __repr__(self):
#     def __init__(self, argument_specification, docstring=None):
#     def __repr__(self):
#     def check_compliance(self, function):
#     def __new__(cls, interface_name, bases, attributes):
#     def _is_interface_class(cls, other_class):
#     def check_compliance(cls, instance):
# def get_implemented_interfaces(cls):
# def set_implemented_interfaces(cls, interfaces):
# def add_implemented_interfaces(cls, interfaces):
# def implements(*interfaces):
#     def wrapper(cls):
# def implements_only(*interfaces):
#     def wrapper(cls):
# def isimplementation(obj, interfaces):


# Path: wiring/scopes.py
import os
import threading
from wiring import interface

)


class IScope(interface.Interface):
    """
    Interface defining a :term:`scope` object.
    """

    def __getitem__(specification):
        """
        Returns a cached instance for given :term:`specification`. Raises
        `KeyError` if there is none.

        :raises:
            KeyError
        """

    def __setitem__(specification, instance):
        """
        Saves a cached `instance` for given :term:`specification`. If there was
        already a cached instance for this specification, it is overriden.
        """

    def __contains__(specification):
        """
        Returns `True` if there is cached instance for given
        :term:`specification` and `False` otherwise.
        """



@interface.implements(IScope)