[package]
authors = ["ScriptAndCompile"]
name = "vb6parse"
homepage = "https://github.com/scriptandcompile/vb6parse"
documentation = "https://docs.rs/vb6parse"
version = "1.0.0"
edition = "2021"
license = "MIT"
description = "vb6parse is a library for parsing and analyzing VB6 code, from projects, to controls, to modules, and forms."
repository = "https://github.com/scriptandcompile/vb6parse"
readme = "README.md"
keywords = ["vb6", "parser", "analyzer", "vb6parse"]
categories = ["development-tools", "parsing", "parser-implementations"]
exclude = [
"tests/data/ADM-TSC-Tools-ALM-QC/*",
"tests/data/audiostation/*",
"tests/data/Binary-metamorphosis/*",
"tests/data/Bitrate-calculator/*",
"tests/data/CdiuBeatUpEditor/*",
"tests/data/ChessBrainVB/*",
"tests/data/CoolWind2D-GameEngine-CHS/*",
"tests/data/DevOps/*",
"tests/data/Discrete-Probability-Detector-in-VB6/*",
"tests/data/Endless-runner-Game_VB6.0/*",
"tests/data/Environment/*",
"tests/data/framework-vb6/*",
"tests/data/Genomin/*",
"tests/data/KORG_Read_pcg/*",
"tests/data/Markov-Chains-VB6/*",
"tests/data/Mix-two-signals-by-using-Spectral-Forecast-in-VB6-app-v1.0/*",
"tests/data/Mix-two-signals-by-using-Spectral-Forecast-in-VB6-app-v2.0/*",
"tests/data/NewTab/*",
"tests/data/OCX_Advanced_Control__VB6/*",
"tests/data/OCX_Advanced_Grid__VB6/*",
"tests/data/omelette-vb6/*",
"tests/data/opendialup/*",
"tests/data/Papaver-Genomics/*",
"tests/data/project-duplication-detection-system/*",
"tests/data/ProjectExaminer/*",
"tests/data/PromKappa-1.0-makes-Objective-Digital-Stains/*",
"tests/data/Prototype-software-for-Photon-pixel-coupling/*",
"tests/data/SK-ADO_Dan_SQL_Demo__VB6/*",
"tests/data/SK-Alarm_Clock__VB6/*",
"tests/data/SK-Password-Application-ADD-ON__VB6/*",
"tests/data/SK-SQL_Code_Generator_V2__VB6/*",
"tests/data/stdVBA-Inspiration/*",
"tests/data/SteamyDock/*",
"tests/data/Troyano-VB6-PoC/*",
"tests/data/ucJLDatePicker/*",
"tests/data/unlightvbe_qs/*",
"tests/data/vb6/*",
"tests/data/vb6-code/*",
"tests/data/Vb6.0/*",
"tests/data/VB6-2D-Physic-Engine/*",
"tests/data/VB6-add-GUI-objects-at-runtime/*",
"tests/data/VB6-samples/*",
"tests/data/VbScalesReader/*",
"tests/data/VPN-Lifeguard/*",
"tests/data/w.bloggar/*",
"tests/data/Win_Dialogs/*",
]
[lib]
crate-type = ["cdylib", "rlib"]
[dependencies]
uuid = "1.21.0"
thiserror = "2.0.18"
ariadne = "0.6.0"
image = "0.25.9"
num_enum = "0.7.5"
strum = "0.27.2"
strum_macros = "0.27.2"
encoding_rs = "0.8.35"
either = { version = "1.15.0", features = ["serde"] }
serde = { version = "1.0.228", features = ["derive"] }
phf = { version = "0.13.1", features = ["macros"] }
rowan = "0.16.1"
[target.'cfg(target_arch = "wasm32")'.dependencies]
wasm-bindgen = "0.2.108"
serde-wasm-bindgen = "0.6"
console_error_panic_hook = "0.1"
serde_json = "1.0.149"
[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies]
criterion = { version = "0.8.2", features = ["html_reports"] }
insta = { version = "1.46.3", features = ["yaml"] }
[target.'cfg(target_arch = "wasm32")'.dev-dependencies]
criterion = { version = "0.8.1", default-features = false }
insta = { version = "1.46.0", features = ["yaml"] }
wasm-bindgen-test = "0.3.58"
[[bench]]
name = "lexer"
harness = false
[[bench]]
name = "parser"
harness = false
[[bench]]
name = "project_files"
harness = false
[[bench]]
name = "class_files"
harness = false
[[bench]]
name = "module_files"
harness = false
[[bench]]
name = "form_files"
harness = false
[[bench]]
name = "form_resources"
harness = false
[[example]]
name = "hello_world"
path = "examples/docs/hello_world.rs"
[[example]]
name = "project_parsing"
path = "examples/docs/project_parsing.rs"
[[example]]
name = "error_handling"
path = "examples/docs/error_handling.rs"
[[example]]
name = "tokenization"
path = "examples/docs/tokenization.rs"
[[example]]
name = "cst_navigation_docs"
path = "examples/docs/cst_navigation.rs"
[[example]]
name = "form_parsing"
path = "examples/docs/form_parsing.rs"
[lints.clippy]
pedantic = "warn"