<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-rpcbase/src/method.rs, branch tor-circmgr-v0.18.1</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=tor-circmgr-v0.18.1</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=tor-circmgr-v0.18.1'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2024-04-22T16:02:29Z</updated>
<entry>
<title>rpc: Revise backend for dispatchable-object macro.</title>
<updated>2024-04-22T16:02:29Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-04-11T14:44:17Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=640af8c9c7f79ca033d766391b12c2f30a7f26fd'/>
<id>urn:sha1:640af8c9c7f79ca033d766391b12c2f30a7f26fd</id>
<content type='text'>
The trick here is to provide an `Invoker` trait,
with blanket implementations for appropriate `fn(_,_,_,_?) -&gt; _`.
With this trick, we no longer need to have a `decl_rpc_invoke_fn`.

This lets us discard HasConstTypeId entirely,
and will let us simplify some other syntax moving forward.
</content>
</entry>
<entry>
<title>rpc: Move deftly attributes into an `rpc` namespace.</title>
<updated>2024-04-11T12:56:53Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-04-11T12:56:53Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f96ca62bed8bd1ab42fc069331aef049e9c4515e'/>
<id>urn:sha1:f96ca62bed8bd1ab42fc069331aef049e9c4515e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Refactor: remove existence of HasConstTypeId_ as a trait</title>
<updated>2024-04-08T13:00:29Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-04-08T12:51:56Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5155e9add7b0f94a8d95eae257c9c2a3e64d5566'/>
<id>urn:sha1:5155e9add7b0f94a8d95eae257c9c2a3e64d5566</id>
<content type='text'>
We don't actually need this to be a trait; we just need
methods and objects to have a `CONST_TYPE_ID_` if they want to
participate in the inventory-based method registry.

Removing this trait makes it much simpler to declare methods and
objects.
</content>
</entry>
<entry>
<title>Port many of the macros in tor-rpcbase to use derive-deftly.</title>
<updated>2024-04-04T20:42:57Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-04-04T20:04:39Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=66cfabc442bfc1779a4748b89d0be2d51f908fc9'/>
<id>urn:sha1:66cfabc442bfc1779a4748b89d0be2d51f908fc9</id>
<content type='text'>
This simplifies our implementation logic in a few places,
and simplifies our invocation syntax greatly.  There are a few
infelicities, noted in `TODO RPC` comments.
</content>
</entry>
<entry>
<title>Arti: Add ability to remember the list of methods names.</title>
<updated>2023-04-19T16:38:26Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-04-18T22:43:16Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=accd3d858f9812eba326306014a9543590d93dad'/>
<id>urn:sha1:accd3d858f9812eba326306014a9543590d93dad</id>
<content type='text'>
Right now, this lets us say whether the method was unrecognized or
whether the parameter type was incorrect.

We'll use this to enforce correct method names later on.

(I have to add another `inventory` here, since the `typetag`
maintainer does not want to expose this functionality: see
https://github.com/dtolnay/typetag/issues/57#issuecomment-1506106290
)
</content>
</entry>
<entry>
<title>rpc: Split Method into DynMethod and Method</title>
<updated>2023-04-19T16:38:26Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-04-18T17:04:28Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=7dcfb02c2201c29cb3237f5921a4130e6fcd567a'/>
<id>urn:sha1:7dcfb02c2201c29cb3237f5921a4130e6fcd567a</id>
<content type='text'>
Now `Method` has an Output and Update associated type, and
`decl_method` can do a little more.
</content>
</entry>
<entry>
<title>tor-rpcbase: Rename cmd.rs to method.rs.</title>
<updated>2023-04-12T15:26:12Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-04-12T15:26:12Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=224b919835b4faf2014c9daf4edcb83353d610de'/>
<id>urn:sha1:224b919835b4faf2014c9daf4edcb83353d610de</id>
<content type='text'>
</content>
</entry>
</feed>
