summaryrefslogtreecommitdiff
path: root/crates/tor-rpcbase/src/dispatch.rs
Commit message (Collapse)AuthorAgeFilesLines
* rpc: New syntax for method declarationNick Mathewson2023-04-191-9/+46
| | | | | Now you just declare your function `my_func` with the right types, and invoke `rpc_invoke_fn!{ my_func(ObjType, MethodType); }`
* rpcbase: Use with_fn.Nick Mathewson2023-04-191-7/+10
|
* rpc: Minor tweaks to get a sink to compile.Nick Mathewson2023-04-191-4/+5
|
* rpc: Use Method types to determine type of method outputs, updates.Nick Mathewson2023-04-191-64/+103
| | | | This lets us do much less in our rpc_invoke_fn functions.
* rpc: Split Method into DynMethod and MethodNick Mathewson2023-04-191-13/+20
| | | | | Now `Method` has an Output and Update associated type, and `decl_method` can do a little more.
* rpc: simplify API by always providing a sink.Nick Mathewson2023-04-161-19/+12
| | | | | Previously we have two places where we had to do "make a `Drain` sink if updates aren't wanted"; now there's only one.
* rpc: Wire updates into rpc invoke functions again.Nick Mathewson2023-04-161-12/+43
| | | | | | | | Now that the sink is not part of the context, RPC functions that are able to send an update have to declare an `impl Sink` as their fourth argument. This syntax is not final. Part of #824.
* rpc: Move update sink out of context.Nick Mathewson2023-04-161-38/+13
| | | | | Now the update sink is its own boxed object. It is not yet passed to the invoke functions that want it.
* tor-rpcbase: rename cmd to method everywhere.Nick Mathewson2023-04-121-31/+31
|
* tor-rpcbase: Rename and rephrase "command" to "method"Nick Mathewson2023-04-121-29/+29
|
* rpc: Use empty structs in test code.Nick Mathewson2023-04-121-12/+12
|
* Rename tor-rpccmd to tor-rpcbase.Nick Mathewson2023-04-121-0/+396