# Eigener leerer Workspace-Block: entkoppelt kernel2d vollstaendig vom # cad-tauri-Workspace (src-tauri/Cargo.toml), damit `cargo test`/`wasm-pack` # aus diesem Verzeichnis heraus nicht faelschlich dessen Workspace erben. # Muster: render2d/render3d. (Parent-`exclude` allein greift beim Bauen aus # dem Unterverzeichnis nicht zuverlaessig.) [workspace] [package] name = "kernel2d" version = "0.1.0" edition = "2021" description = "2D-Geometrie-Kern (Port von src/geometry/kernel2d.ts) — handgeschriebene f64-Mathematik, headless per `cargo test` UND per wasm-pack (Feature \"web\") zu WASM baubar. Hinter identischer TS-Fassade; TS-Legacy bleibt Differential-Referenz." # cdylib: von wasm-pack (Feature "web") fuer das .wasm-Modul. rlib: als # Pfad-Abhaengigkeit und fuer den Test-/Example-Build (parity). Muster: # render2d/render3d/geometry. [lib] crate-type = ["cdylib", "rlib"] [features] # Standard: reiner f64-Rechenkern, headless per `cargo test` pruefbar. default = [] # Browser-Bindings: dieselbe Geometrie hinter wasm-bindgen-Batch-Fassaden, # aus TS via wasm-pack aufgerufen. Nur fuer wasm32-unknown-unknown sinnvoll. web = ["dep:wasm-bindgen", "dep:serde_json", "dep:console_error_panic_hook"] # ADDITIV, NICHT im web-Default: exakte Orientierungs-Praedikate (robust::orient2d) # nur intern fuer Korrektheits-Golden-Cases (detectRooms/point-in-polygon). Der # Zufalls-Diff-Test gegen TS-naiv laeuft OHNE dieses Feature (siehe PORT_PLAN §3). robust-predicates = ["dep:robust"] [dependencies] serde = { version = "1", features = ["derive"] } serde_json = { version = "1", optional = true } wasm-bindgen = { version = "0.2", optional = true } console_error_panic_hook = { version = "0.1", optional = true } robust = { version = "1", optional = true } # Nur fuers Paritaets-Beispiel (examples/parity.rs) — JSON von stdin lesen. [dev-dependencies] serde_json = "1"