rust-fsm
hyper-ts
rust-fsm | hyper-ts | |
---|---|---|
1 | 1 | |
142 | 392 | |
- | - | |
1.7 | 5.4 | |
29 days ago | 3 months ago | |
Rust | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rust-fsm
hyper-ts
-
Rusty Typestates – Starting Out
I just read about typestates in Rust on Cliff Biffle's blog here: http://cliffle.com/blog/rust-typestate/#variation-state-type...
He covers a few additional parts of the typestate pattern, such as isolating data in specific states as well as sharing common implementations across a subset of states.
I'd also like to note that typestates also show up in functional programming under Indexed Monads, where a function might take a struct from an initial typestate, unwrap its data, and return a final(likely different) typestate. You can search Indexed Monad for more explanation there. If you work primarily in typescript you can find a production ready implementation of typestate programming here: https://github.com/DenisFrezzato/hyper-ts
What are some alternatives?
syn - Parser for Rust source code
session-types
field_names - proc-macro for accessing struct field names at runtime
darling - A Rust proc-macro attribute parser
quote - Rust quasi-quoting