# EasyRpc v0.9.0 - Table of Contents

A library for wrapping RPC calls from remote nodes, allowing them to be used like local functions. It provides a simple way to expose remote functions as local APIs.

## Pages

- [Architecture](architecture.md)
- [Faq](faq.md)
- [Getting Started](getting_started.md)
- [Migration Guide](migration_guide.md)
- [Readme](readme.md)
- [Changelog](changelog.md)
- [Contributing](contributing.md)

## Modules

- [EasyRpc](EasyRpc.md): Main DSL module for EasyRpc.
- [EasyRpc.Behaviours.RpcExecutor](EasyRpc.Behaviours.RpcExecutor.md): Behaviour for RPC execution implementations.
- [EasyRpc.ConfigError](EasyRpc.ConfigError.md): Kept for backward compatibility. Delegates to `EasyRpc.Error`.
- [EasyRpc.DefRpc](EasyRpc.DefRpc.md): Declarative per-function RPC wrapper via the `defrpc` macro.
- [EasyRpc.Dsl](EasyRpc.Dsl.md): Spark DSL extension for EasyRpc.
- [EasyRpc.Dsl.Function](EasyRpc.Dsl.Function.md): Struct representing an RPC function definition in the DSL.

- [EasyRpc.Info](EasyRpc.Info.md): Info module for introspecting EasyRpc DSL definitions.
- [EasyRpc.NodeSelector](EasyRpc.NodeSelector.md): Node selection strategies for distributed RPC calls.
- [EasyRpc.RpcCall](EasyRpc.RpcCall.md): Core module for executing remote procedure calls.
- [EasyRpc.RpcError](EasyRpc.RpcError.md): Kept for backward compatibility. Delegates to `EasyRpc.Error`.
- [EasyRpc.RpcWrapper](EasyRpc.RpcWrapper.md): Configuration-driven RPC wrapper.
- [EasyRpc.Transformers.GenerateRpcFunctions](EasyRpc.Transformers.GenerateRpcFunctions.md): Transformer that generates RPC wrapper functions from DSL definitions.
- [EasyRpc.Utils.FunctionGenerator](EasyRpc.Utils.FunctionGenerator.md): Compile-time helpers for generating RPC wrapper functions.
- [EasyRpc.Verifiers.ValidateConfig](EasyRpc.Verifiers.ValidateConfig.md): Verifies that the EasyRpc DSL configuration is valid.
- [EasyRpc.WrapperConfig](EasyRpc.WrapperConfig.md): Configuration struct for RPC wrappers.

- Exceptions
  - [EasyRpc.Error](EasyRpc.Error.md): Unified error handling for EasyRpc library.

