Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rotty/lexpr-rs
Rust Lisp expression parser and serializer
https://github.com/rotty/lexpr-rs
rust s-expression s-expressions
Last synced: 7 days ago
JSON representation
Rust Lisp expression parser and serializer
- Host: GitHub
- URL: https://github.com/rotty/lexpr-rs
- Owner: rotty
- License: apache-2.0
- Created: 2019-02-08T19:51:49.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2024-08-24T21:32:34.000Z (3 months ago)
- Last Synced: 2024-11-06T16:25:41.845Z (14 days ago)
- Topics: rust, s-expression, s-expressions
- Language: Rust
- Size: 5.45 MB
- Stars: 164
- Watchers: 6
- Forks: 24
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# lexpr: S-expressions for Rust [![Build Status]][gh-actions] [![Codecov]][codecov] [![Rustc Version 1.56+]][rustc]
[Build Status]: https://github.com/rotty/lexpr-rs/workflows/CI/badge.svg
[gh-actions]: https://github.com/rotty/lexpr-rs/actions
[codecov]: https://codecov.io/github/rotty/lexpr-rs/coverage.svg?branch=master
[Rustc Version 1.56+]: https://img.shields.io/badge/rustc-1.56+-lightgray.svg
[rustc]: https://blog.rust-lang.org/2021/10/21/Rust-1.56.0.htmlThis repository hosts the following crates:
- [`lexpr`](./lexpr), providing the `lexpr::Value` type for
representing S-expression data, the `sexp` macro to embed
S-expression values into Rust code, as well as a parser and printer
for S-expressions. Please refer to crate's
[`README`](./lexpr/README.md) for more information.- [`serde-lexpr`](./serde-lexpr), integrating `lexpr` with Serde,
allowing to serialize and deserialize Rust data structures to and
from S-expressions.- [`lexpr-macros`](./lexpr-macros), an internal crate actually
implementing the `sexp` macro. This crate should be considered an
implementation detail, and not be used directly, only via the
`lexpr` crate.## Licensing
The code and documentation in the `lexpr-rs` git repository is [free
software](https://www.gnu.org/philosophy/free-sw.html), dual-licensed
under the [MIT](./LICENSE-MIT) or [Apache-2.0](./LICENSE-APACHE)
license, at your choosing.The `lexpr` repository contains code and documentation adapted from
the following projects, all licensed under the same conditions,
i.e. dual-licensed under MIT or Apache-2.0 license:- [`serde_json`](https://github.com/serde-rs/json)
- [`serde_yaml`](https://github.com/dtolnay/serde-yaml)
- [`sexpr`](https://github.com/zv/sexpr), Copyright 2017 Zephyr
Pellerin.