Skip to content

v0.2.0

Compare
Choose a tag to compare
@Ulladay-Hub Ulladay-Hub released this 20 Jun 06:25
· 17 commits to master since this release

Sponge v0.2.0 Release

We are excited to announce the release of Sponge v0.2.0! Sponge is a Rust library designed to facilitate the conversion of Rust code into Assembly language, providing developers with a powerful tool for low-level programming optimizations and understanding.

Features in this release:

  • Tokenization: Convert Rust code into a structured list of tokens representing keywords, identifiers, symbols, and literals.
  • Parsing: Transform tokens into a parsed format that abstracts away Rust-specific syntax, preparing it for further processing.
  • Assembly Code Generation: Generate Assembly language code from parsed tokens, offering insights into how Rust code translates at a lower level.
  • Expanded Functionality: Integration with Clap for command-line argument parsing, enabling more flexible use cases.

Usage Example:

fn main() {
    let rust_code = r#"
        fn main() {
            let REG_1: i32 = 50;
        }
    "#;

    let tokens = sponge::tokenize(rust_code);
    let parsed_tokens = sponge::parse(tokens);
    let asm_code = sponge::generate_asm(parsed_tokens);

    println!("Generated Assembly Code:\n{}", asm_code);
}

Installation:

To use Sponge in your Rust project, add the following to your Cargo.toml:

[dependencies]
sponge = "0.2.0"

Or use the module on crates.io. Sponge crate

Contributing:

Contributions are welcome! If you encounter any issues or have suggestions for improvement, please open an issue or submit a pull request.

License:

This project is licensed under the MIT License - see the LICENSE.md file for details.

Contact:

For questions or feedback, you can reach us at [email protected].

Thank you for using Sponge!