''' This module implements a Remote Procedure Call system using socket objects as transport. The main feature of this RPC is to be bidirectionnal: both client and server can serve remote procedure for its peer. Features: * Multiplexed: you can run tunnels or many RPC through the same socket. * Gevent: sjRpc is compatible with gevent and use it for server feature. * Bidirectionnal: each peer can call remote function on other. The library is separated into three parts: * **core** package contains all common classes. * **server** package contains all the server side related stuff. * **utils** package contains some helpers used in previous libraries. ''' import sjrpc.core import sjrpc.server import sjrpc.utils __version__ = '14~dev'