Module: Caravan::Rpc

Defined in:
lib/caravan/rpc.rb,
lib/caravan/rpc/version.rb

Constant Summary collapse

PLACEHOLDER_MSG =
"caravan-rpc 0.0.1 is a pre-release placeholder. " \
"The functional SDK lands at 0.1.0; see https://github.com/paulxiep/caravan."
VERSION =
"0.0.1"

Class Method Summary collapse

Class Method Details

.client(_iface) ⇒ Object

Pre-release stub.

The real client returns a dispatcher proxy reading CARAVAN_RPC_PEERS from env. In 0.0.1 it raises NotImplementedError — the SDK is not yet functional.

Raises:

  • (NotImplementedError)


42
43
44
# File 'lib/caravan/rpc.rb', line 42

def self.client(_iface)
  raise NotImplementedError, PLACEHOLDER_MSG
end

.provide(_iface, _impl) ⇒ Object

Pre-release no-op.

The real provide registers an impl for an interface in the SDK’s inproc registry. In 0.0.1 it does nothing.



33
34
35
# File 'lib/caravan/rpc.rb', line 33

def self.provide(_iface, _impl)
  nil
end

.wagon(klass) ⇒ Object

Pre-release identity decorator.

The real wagon marks a class as a seam for the Caravan compiler. In 0.0.1 it returns the class unchanged so SDK-wrapped code requires cleanly.



25
26
27
# File 'lib/caravan/rpc.rb', line 25

def self.wagon(klass)
  klass
end