.. _rpc_lesson1_rst: rpc_lesson1 ================================= Two models run in a client-server, remote procedure call (RPC) communication pattern. The client model `client` sends requests and receives response to/from the server model `server` via the deprecated `call` method. The server model receives requests and send responses. This example demostrates the RPC pattern through the use of the `client_of` and `is_server` model parameters and the RPC interface classes/functions. The `client` model also sends request/response pairs to a file. .. contents:: :local: C Version --------- Model Code: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/server.c :language: c :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/client.c :language: c :linenos: Model YAML: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/server_c.yml :language: yaml :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/client_c.yml :language: yaml :linenos: C++ Version ----------- Model Code: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/server.cpp :language: c++ :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/client.cpp :language: c++ :linenos: Model YAML: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/server_cpp.yml :language: yaml :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/client_cpp.yml :language: yaml :linenos: Fortran Version --------------- Model Code: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/server.f90 :language: python :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/client.f90 :language: python :linenos: Model YAML: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/server_fortran.yml :language: yaml :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/client_fortran.yml :language: yaml :linenos: Julia Version ------------- Model Code: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/server.jl :language: python :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/client.jl :language: python :linenos: Model YAML: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/server_julia.yml :language: yaml :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/client_julia.yml :language: yaml :linenos: Matlab Version -------------- Model Code: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/server.m :language: matlab :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/client.m :language: matlab :linenos: Model YAML: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/server_matlab.yml :language: yaml :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/client_matlab.yml :language: yaml :linenos: Python Version -------------- Model Code: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/server.py :language: python :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/client.py :language: python :linenos: Model YAML: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/server_python.yml :language: yaml :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/client_python.yml :language: yaml :linenos: R Version --------- Model Code: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/server.R :language: python :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/src/client.R :language: python :linenos: Model YAML: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/server_r.yml :language: yaml :linenos: .. literalinclude:: /../../../../../../../opt/hostedtoolcache/Python/3.8.17/x64/lib/python3.8/site-packages/yggdrasil/examples/rpc_lesson1/client_r.yml :language: yaml :linenos: