[package]
edition = "2024"
rust-version = "1.88"
name = "keleusma"
version = "0.2.0"
build = false
publish = ["crates-io"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Total Functional Stream Processor with definitive WCET and WCMU verification, targeting no_std + alloc embedded scripting"
homepage = "https://github.com/sgeos/keleusma"
documentation = "https://docs.rs/keleusma"
readme = "README.md"
keywords = [
"scripting",
"bytecode",
"no-std",
"wcet",
"embedded",
]
categories = [
"no-std",
"compilers",
"embedded",
]
license = "0BSD"
repository = "https://github.com/sgeos/keleusma"
[package.metadata.docs.rs]
all-features = false
features = [
"compile",
"verify",
"floats",
"signatures",
"shell",
]
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
compile = []
default = [
"compile",
"verify",
"floats",
]
floats = []
narrow-address-16 = []
narrow-address-32 = []
narrow-address-8 = []
narrow-float-32 = []
narrow-word-16 = []
narrow-word-32 = []
narrow-word-8 = []
sdl3-example = ["dep:sdl3"]
shell = []
signatures = ["dep:ed25519-dalek"]
verify = []
[lib]
name = "keleusma"
path = "src/lib.rs"
[[example]]
name = "generic_identity"
path = "examples/generic_identity.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "generic_match"
path = "examples/generic_match.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "generic_struct"
path = "examples/generic_struct.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "measured_wcet"
path = "examples/measured_wcet.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "method_call"
path = "examples/method_call.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "monomorphize_generic_method"
path = "examples/monomorphize_generic_method.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "narrow_runtime"
path = "examples/narrow_runtime.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "opaque_rust_string"
path = "examples/opaque_rust_string.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "piano_roll"
path = "examples/piano_roll.rs"
required-features = [
"compile",
"verify",
"sdl3-example",
]
[[example]]
name = "rogue"
path = "examples/rogue/main.rs"
required-features = [
"compile",
"verify",
"sdl3-example",
]
[[example]]
name = "string_ops"
path = "examples/string_ops.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "struct_method_dispatch"
path = "examples/struct_method_dispatch.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "target_aware_compile"
path = "examples/target_aware_compile.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "wcmu_attestation"
path = "examples/wcmu_attestation.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "wcmu_basic"
path = "examples/wcmu_basic.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "wcmu_rejection"
path = "examples/wcmu_rejection.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "yield_error"
path = "examples/yield_error.rs"
required-features = [
"compile",
"verify",
]
[[example]]
name = "zero_copy_include_bytes"
path = "examples/zero_copy_include_bytes.rs"
required-features = [
"compile",
"verify",
]
[[test]]
name = "big_number_arithmetic"
path = "tests/big_number_arithmetic.rs"
[[test]]
name = "kstring_boundary"
path = "tests/kstring_boundary.rs"
[[test]]
name = "marshall"
path = "tests/marshall.rs"
[[test]]
name = "narrow_vm"
path = "tests/narrow_vm.rs"
[[test]]
name = "opaque"
path = "tests/opaque.rs"
[[test]]
name = "rogue_scripts"
path = "tests/rogue_scripts.rs"
[dependencies.allocator-api2]
version = "0.4"
features = ["alloc"]
default-features = false
[dependencies.ed25519-dalek]
version = "2"
features = [
"alloc",
"zeroize",
]
optional = true
default-features = false
[dependencies.keleusma-arena]
version = "0.3"
features = ["alloc"]
[dependencies.keleusma-macros]
version = "0.2.0"
[dependencies.libm]
version = "0.2"
[dependencies.rkyv]
version = "0.8"
features = [
"alloc",
"bytecheck",
]
default-features = false
[dependencies.sdl3]
version = "0.18"
features = ["build-from-source-static"]
optional = true