2 unstable releases

0.3.0 Nov 14, 2024
0.2.3 Jul 31, 2023
0.2.2 Jul 31, 2023
0.2.1 Jul 31, 2023
0.2.0 Jul 27, 2023

#2933 in Procedural macros

Download history 1538/week @ 2025-07-29 1342/week @ 2025-08-05 1785/week @ 2025-08-12 1971/week @ 2025-08-19 1803/week @ 2025-08-26 1688/week @ 2025-09-02 1885/week @ 2025-09-09 1697/week @ 2025-09-16 1774/week @ 2025-09-23 1261/week @ 2025-09-30 1516/week @ 2025-10-07 1534/week @ 2025-10-14 1607/week @ 2025-10-21 1672/week @ 2025-10-28 2091/week @ 2025-11-04 1835/week @ 2025-11-11

7,536 downloads per month
Used in p9

BSD-3-Clause

12KB
251 lines

Derives a 9P wire format encoding for a struct by recursively calling WireFormat::encode or WireFormat::decode on the fields of the struct. This is only intended to be used from within the p9 crate.


p9 - Server implementation of the 9p file system protocol

This directory contains the protocol definition and a server implementation of the 9p file system protocol.

  • wire_format_derive - A procedural macro that derives the serialization and de-serialization implementation for a struct into the 9p wire format.
  • src/protocol - Defines all the messages used in the 9p protocol. Also implements serialization and de-serialization for some base types (integers, strings, vectors) that form the foundation of all 9p messages. Wire format implementations for all other messages are derived using the wire_format_derive macro.
  • src/server - Implements a full 9p server, carrying out file system requests on behalf of clients.

Dependencies

~165–580KB
~14K SLoC