liberty-db

Crates.ioliberty-db
lib.rsliberty-db
version0.4.8
sourcesrc
created_at2022-12-12 12:29:10.476702
updated_at2024-05-23 08:28:25.393323
description`liberty` data structre
homepage
repositoryhttps://github.com/zao111222333/liberty-db/
max_upload_size
id734930
size567,367
Junzhuo ZHOU (zao111222333)

documentation

https://docs.rs/liberty-db

README

liberty-db

pipeline pipeline License liberty-db liberty-macros Docs

Work in progress, unstable

Usage

[dependencies]
liberty_db = "0.4"

See more in doc

Test

cargo test --package liberty-tests --test tests

Testbench

cargo test --package liberty-tests --lib -- parser_bench::test_all_lib_files --exact --nocapture 
liberty-db liberty-io libertyparse Test Liberty File
402.79ms 115.81ms 342.70ms tests/tech/SAED32_EDK/ccs/saed32hvt_pg_ff0p95v125c.lib
599.51ms 284.08ms 839.44ms tests/tech/SAED32_EDK/ccs/saed32hvt_dlvl_ff0p85v25c_i0p85v.lib
83.12ms 40.12ms 122.26ms tests/tech/SAED32_EDK/nldm/saed32hvt_dlvl_ff0p85v25c_i0p85v.lib
4.50s 1.48s PANIC tests/tech/SAED32_EDK/nldm/saed32hvt_ff0p85v25c.lib
3.00ms 20.58ms 5.08ms tests/tech/freepdk45/gscl45nm.lib
125.41µs FAIL FAIL tests/tech/cases/no_semicolon.lib
66.77µs FAIL 131.15µs tests/tech/cases/formula.lib
16.04ms 8.67ms 25.57ms tests/tech/cases/ocv.lib
13.69ms 6.76ms FAIL tests/tech/sky130/sky130_fd_sc_hs__bufinv_8__tt_1p80V_25C_ccsnoise.cell.lib
2.13s 870.17ms 2.85s tests/tech/nangate/NangateOpenCellLibrary_typical.lib

TODO List

  • remove GroupWapper, ComplexWapper, SimpleWapper. At leaset remove it in parser and formatter
  • merge fields of timing at parse phase
impl __timing::ImmutIdTiming { xxx }
  • use PDFJS
  • stream input
  • Linked Group
  • Timing group
  • 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: 267

cargo fmt