Initial commit: noxis JVM bytecode obfuscator

Workspace of 9 crates (noxis, noxis-core, noxis-classfile, noxis-analysis,
noxis-passes, noxis-runtime, noxis-jar, noxis-verify, noxis-structure-check).
AGPL-3.0-only license, Rust 2024 edition, unsafe_code denied.
This commit is contained in:
Loki 2026-10-08 22:01:03 +02:00
commit a641e69455
140 changed files with 17197 additions and 0 deletions

View file

@ -0,0 +1,25 @@
//! # noxis-core
//!
//! Ядро обфускатора: конфигурация, детерминированный seed, маппинги,
//! контекст прогона и контракт пассов ([`pipeline::Pass`]).
//!
//! Ядро ничего не знает о бинарном формате `.class` и о ZIP — только о модели
//! [`noxis_classfile::Program`]. Сборка конвейера из пассов живёт в
//! `noxis-passes`, чтобы не было цикла зависимостей.
pub mod config;
pub mod error;
pub mod mapping;
pub mod pipeline;
pub mod rng;
pub use config::sections::{
ConstantsConfig, DebugConfig, FlowConfig, NameStyle, NoiseConfig, RenameConfig, StringsConfig,
};
pub use config::{Config, PassId, Profile};
pub use error::CoreError;
pub use mapping::{Mapping, field_key, method_key};
pub use pipeline::context::Context;
pub use pipeline::report::Report;
pub use pipeline::{Pass, PassReport, Pipeline};
pub use rng::{Rng, derive_seed};