9 releases

new 0.0.12 Jun 17, 2024
0.0.11 Jun 8, 2024
0.0.10 Jan 29, 2024
0.0.6 Dec 30, 2023
0.0.3 Oct 30, 2023

#526 in Encoding

Download history 11/week @ 2024-02-25 186/week @ 2024-03-10 5/week @ 2024-03-17 11/week @ 2024-03-31 6/week @ 2024-05-26 138/week @ 2024-06-02 37/week @ 2024-06-09

181 downloads per month
Used in 3 crates

MIT/Apache

750KB
20K SLoC

ShEx compact syntax

This module contains a compact syntax parser and serializer for ShEx.


lib.rs:

ShEx compact syntax parser

Example


use shex_ast::{Schema, Shape, ShapeExpr, ShapeExprLabel};
use shex_compact::ShExParser;

let str = r#"prefix : <http://example.org/>
             :S {}
            "#;

let schema = ShExParser::parse(str, None).unwrap();
let mut expected = Schema::new();
expected.add_prefix("", &IriS::new_unchecked("http://example.org/"));
expected.add_shape(
  ShapeExprLabel::iri_unchecked("http://example.org/S"),
  ShapeExpr::empty_shape(),
  false
);
assert_eq!(schema,expected)

Dependencies

~16–32MB
~442K SLoC