sdc-parser

A parser library for Synopsys Design Constraints (sdc).

Build Status Crates.io Docs.rs codecov

Usage

Cargo.toml [dependencies] sdc_parser = "0.1.0"

Example

```rust use sdc_parser::{self, sdc};

fn main() { let result = sdcparser::parse("currentinstance duv");

let expect = sdc::Sdc {
    commands: vec![sdc::Command::CurrentInstance(
        sdc::CurrentInstance {
            instance: Some(String::from("duv"))
        }
    )]
};
assert_eq!(expect, result);

} ```

Benchmark

Environment

Result

| Size[KB] | Time[ms] | Throughput[MBps] | | -------- | -------- | ---------------- | | 5617 | 470 | 12.22 | | 11529 | 965 | 12.23 | | 54059 | 2738 | 20.21 | | 114528 | 9157 | 12.81 | | 496898 | 30887 | 16.47 |