-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Crate metadata, READMEs and LICENSE files
- Loading branch information
Showing
8 changed files
with
189 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
Copyrights in this software are retained by their respective authors. See the | ||
version control history for full authorship information. | ||
|
||
Except as otherwise noted (below and/or in individual files), this software is | ||
licensed under the following terms ("Zero-Clause BSD"): | ||
|
||
Permission to use, copy, modify, and/or distribute this software for any | ||
purpose with or without fee is hereby granted. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY | ||
SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR | ||
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||
|
||
Unless you explicitly state otherwise, any contribution intentionally submitted | ||
for inclusion in this software by you shall be under the terms and conditions | ||
of the above license, without any additional terms or conditions. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
# Flussab | ||
|
||
[![github][github-badge]][github] | ||
[![crates.io][crate-badge]][crate] | ||
[![docs.rs][docs-badge]][docs] | ||
|
||
The Flussab repository contains the file format parsing related crates listed below. See their individual readme's for more information: | ||
|
||
* [`flussab`](flussab) generic parsing utilities. | ||
* [`flussab-cnf`](flussab-cnf) for the DIMACS CNF file format and variants. | ||
|
||
## License | ||
|
||
This software is available under the Zero-Clause BSD license, see | ||
[LICENSE](LICENSE) for full licensing information. | ||
|
||
### Contribution | ||
|
||
Unless you explicitly state otherwise, any contribution intentionally submitted | ||
for inclusion in this software by you shall be licensed as defined in | ||
[LICENSE](LICENSE). | ||
|
||
[github]:https://github.com/jix/flussab | ||
[crate]:https://crates.io/crates/flussab | ||
[docs]:https://docs.rs/flussab/*/flussab | ||
|
||
[github-badge]: https://img.shields.io/badge/github-jix/flussab-blueviolet?style=flat-square | ||
[crate-badge]: https://img.shields.io/crates/v/flussab?style=flat-square | ||
[docs-badge]: https://img.shields.io/badge/docs.rs-flussab-informational?style=flat-square |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
Copyrights in this software are retained by their respective authors. See the | ||
version control history for full authorship information. | ||
|
||
Except as otherwise noted (below and/or in individual files), this software is | ||
licensed under the following terms ("Zero-Clause BSD"): | ||
|
||
Permission to use, copy, modify, and/or distribute this software for any | ||
purpose with or without fee is hereby granted. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY | ||
SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR | ||
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||
|
||
Unless you explicitly state otherwise, any contribution intentionally submitted | ||
for inclusion in this software by you shall be under the terms and conditions | ||
of the above license, without any additional terms or conditions. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
# Flussab CNF | ||
|
||
[![github][github-badge]][github] | ||
[![crates.io][crate-badge]][crate] | ||
[![docs.rs][docs-badge]][docs] | ||
|
||
Parsing and writing of the [DIMACS CNF file format][dimacs-cnf], implemented | ||
using [`flussab`][flussab]. The goal of this library is to provide a very | ||
efficient streaming parser for the DIMACS CNF file format while being easy to | ||
extend to the numerous variants, extensions and related file formats. Currently | ||
only the base file format is covered, but feel free to file issues regarding | ||
support for related formats. | ||
|
||
## Performance | ||
|
||
I don't have any extensive benchmarks, but parsing _and_ writing a 2.1 GiB CNF | ||
file (from and to a `tmpfs`) takes 9 seconds on my machine, while `coreutils`' | ||
`wc -w` takes 9.5 seconds to perform a much easier task. | ||
|
||
Now it might seem silly to focus an _parsing_ performance for a file format | ||
used in SAT solving, given that the runtime of SAT solvers almost always | ||
dominates any time spent parsing. Nevertheless, often enough I find myself in | ||
the situation of parsing many and/or large CNF files for some processing task | ||
which is much faster than solving itself. | ||
|
||
[dimacs-cnf]:http://www.satcompetition.org/2009/format-benchmarks2009.html | ||
[flussab]:https://crates.io/crates/flussab | ||
|
||
## License | ||
|
||
This software is available under the Zero-Clause BSD license, see | ||
[LICENSE](LICENSE) for full licensing information. | ||
|
||
### Contribution | ||
|
||
Unless you explicitly state otherwise, any contribution intentionally submitted | ||
for inclusion in this software by you shall be licensed as defined in | ||
[LICENSE](LICENSE). | ||
|
||
[github]:https://github.com/jix/flussab | ||
[crate]:https://crates.io/crates/flussab-cnf | ||
[docs]:https://docs.rs/flussab-cnf/*/flussab-cnf | ||
|
||
[github-badge]: https://img.shields.io/badge/github-jix/flussab-blueviolet?style=flat-square | ||
[crate-badge]: https://img.shields.io/crates/v/flussab-cnf?style=flat-square | ||
[docs-badge]: https://img.shields.io/badge/docs.rs-flussab_cnf-informational?style=flat-square |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
Copyrights in this software are retained by their respective authors. See the | ||
version control history for full authorship information. | ||
|
||
Except as otherwise noted (below and/or in individual files), this software is | ||
licensed under the following terms ("Zero-Clause BSD"): | ||
|
||
Permission to use, copy, modify, and/or distribute this software for any | ||
purpose with or without fee is hereby granted. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY | ||
SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR | ||
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||
|
||
Unless you explicitly state otherwise, any contribution intentionally submitted | ||
for inclusion in this software by you shall be under the terms and conditions | ||
of the above license, without any additional terms or conditions. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
# Flussab | ||
|
||
[![github][github-badge]][github] | ||
[![crates.io][crate-badge]][crate] | ||
[![docs.rs][docs-badge]][docs] | ||
|
||
The Flussab crate is a collection of utlities for writing parsers. | ||
|
||
Currently Flussab aims to provide just enough to write parsers with a certain | ||
combination of constraints for which Flussab's author did not find a suitable | ||
existing solution. It is not intended as a replacement for any such existing | ||
solution targeting a different set of constraints. | ||
|
||
The target use-case are efficient, continuously streaming, interactive, error | ||
reporting, non-backtracking, recursive-descent parsers for text-based, binary | ||
and mixed formats. See the [documentation][docs], for details on what | ||
trade-offs this implies. | ||
|
||
Parsers (and writers) for the following file formats are currently implemented | ||
using Flussab: | ||
|
||
* [`flussab-cnf`](https://crates.io/crates/flussab-cnf) for the DIMACS CNF file | ||
format and variants. | ||
|
||
## License | ||
|
||
This software is available under the Zero-Clause BSD license, see | ||
[LICENSE](LICENSE) for full licensing information. | ||
|
||
### Contribution | ||
|
||
Unless you explicitly state otherwise, any contribution intentionally submitted | ||
for inclusion in this software by you shall be licensed as defined in | ||
[LICENSE](LICENSE). | ||
|
||
[github]:https://github.com/jix/flussab | ||
[crate]:https://crates.io/crates/flussab | ||
[docs]:https://docs.rs/flussab/*/flussab | ||
|
||
[github-badge]: https://img.shields.io/badge/github-jix/flussab-blueviolet?style=flat-square | ||
[crate-badge]: https://img.shields.io/crates/v/flussab?style=flat-square | ||
[docs-badge]: https://img.shields.io/badge/docs.rs-flussab-informational?style=flat-square |