Skip to content

[FEATURE] [RPC] Create Procedural Macro for Handler Definitions #41

@hulxv

Description

@hulxv

Description

Implement the #[rpc_handler] procedural macro to make handler definition ergonomic.

Motivation

Allow users to write handlers as simple async functions without boilerplate.

Proposed Solution

#[rpc_handler]
async fn add(params: AddParams) -> Result<i32> {
    Ok(params.a + params.b)
}

Tasks

  • Create mill-rpc-macros crate
  • Implement #[rpc_handler] macro
  • Support async functions
  • Add parameter extraction
  • Handle errors properly
  • Support compute pool attribute: #[rpc_handler(compute)]
  • Write macro tests
  • Document macro usage

Expected

  • Ergonomic handler definition
  • Automatic parameter extraction
  • Error handling integration
  • Compute pool support

Dependencies:

Metadata

Metadata

Assignees

No one assigned

    Labels

    coinswap-migration-phase-2The 2nd phase in integration of mill-io inside CoinswapenhancementNew feature or requestmill-rpcRelated to mill-rpc, our mill-io-based RPC framework

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions