liberty-db

Crates.ioliberty-db
lib.rsliberty-db
version0.6.8
sourcesrc
created_at2022-12-12 12:29:10.476702
updated_at2024-11-08 10:10:56.817551
description`liberty` data structre
homepage
repositoryhttps://github.com/zao111222333/liberty-db/
max_upload_size
id734930
size664,565
Junzhuo ZHOU (zao111222333)

documentation

https://docs.rs/liberty-db

README

liberty-db

pipeline pipeline License liberty-db Docs Benchmark

Highlight Features

Usage

This library is implemented in Rust, with document.

[dependencies]
liberty_db = "0.6"

You can run examples with commands:

# example0
cargo run --package example0_parse_fmt
# example1
cargo run --package example1_parse_fmt_file -- dev/tech/cases/ocv.lib
# example2
cargo run --package example2_prune_lib -- dev/tech/cases/ocv.lib

Benchmark

Basic information as follow, see latest benchmark summary.

Project Comparison

ProjLanguageVersionType SupportBoolean ExpressionComment
AllPartlyAST only
liberty-dbrustlatestcurrent version
si2dr_libertyC1.0Synopsys's version at 2005, many attributes are not supported
OpenTimerC++172STA tool's liberty component
liberty-iorust0.0.4
libertyparserust0.3.0
liberty2jsonrust0.1.0

Self Regression

ProjLanguageVersionType SupportBoolean ExpressionComment
AllPartlyAST only
liberty-dbrustlatestcurrent version
liberty-dbrust0.6.3published at 2024-09-07
liberty-dbrust0.5.9published at 2024-08-27
liberty-dbrust0.4.13published at 2024-08-13
liberty-dbrust0.3.1published at 2023-08-03

Dev

Run unit-test and regression.

cargo test
cargo test --package dev

Run benchmark, it will takes 5h.

cargo bench --bench dev

TODO

  • intrinsic_parasitic group
  • leakage_current group
  • dynamic_current group
  • use PDFJS
  • stream input
  • Linked Group
  • user define
  • remove GroupWapper, ComplexWapper, SimpleWapper. At leaset remove it in parser and formatter
  • fix missing newline at endding
  • recursive parse boolean expression
  • macros
  • format to liberty
  • support multi-line \
  • support comment
  • Use MutSet to store GroupMap
Commit count: 406

cargo fmt