cruet

Crates.iocruet
lib.rscruet
version0.14.0
sourcesrc
created_at2022-09-22 10:02:54.882736
updated_at2023-11-23 05:36:27.626791
descriptionAdds String based inflections for Rust. Snake, kebab, camel, sentence, class, title and table cases as well as ordinalize, deordinalize, demodulize, foreign key, and pluralize/singularize are supported as both traits and pure functions acting on String types.
homepagehttps://github.com/chrislearn/cruet
repositoryhttps://github.com/chrislearn/cruet
max_upload_size
id671607
size136,008
Chrislearn Young (chrislearn)

documentation

https://docs.rs/cruet

README

Rust Inflector

This project is forked from https://github.com/whatisinternet/Inflector. The original author doesn't maintain this anymore.

Build Status Crates.ioCrate downloads

Adds String based inflections for Rust. Snake, kebab, train, camel, sentence, class, and title cases as well as ordinalize, deordinalize, demodulize, deconstantize, foreign key, table case, and pluralize/singularize are supported as both traits and pure functions acting on &str and String types.


Documentation:

Documentation can be found here at the README or via rust docs below.

Rust docs with examples


Installation:

As a crate

[dependencies]
cruet = "*"

Compile yourself:

  1. Install Rust and cargo
  2. git clone https://github.com/chrislearn/cruet
  3. Library: cd cruet && cargo build --release --lib
  4. You can find the library in target/release

Usage / Example:

// to use methods like String.to_lower_case();
use cruet::Inflector;
fn main() {
  let camel_case_string: String = "some_string".to_camel_case();
}

Or

// to use methods like to_snake_case(&str);
use cruet;

// use cruet::to_class_case;
// use cruet::is_class_case;

// use cruet::to_camel_case;
// use cruet::is_camel_case;

// use cruet::to_pascal_case;
// use cruet::is_pascal_case;

// use cruet::to_screamingsnake_case;
// use cruet::is_screamingsnake_case;

// use cruet::to_snake_case;
// use cruet::is_snake_case;

// use cruet::to_kebab_case;
// use cruet::is_kebab_case;

// use cruet::to_train_case;
// use cruet::is_train_case;

// use cruet::to_sentence_case;
// use cruet::is_sentence_case;

// use cruet::to_title_case;
// use cruet::is_title_case;

// use cruet::to_table_case;
// use cruet::is_table_case;

// use cruet::ordinalize;
// use cruet::deordinalize;

// use cruet::to_foreign_key;
// use cruet::is_foreign_key;

// use cruet::demodulize;
// use cruet::deconstantize;

// use cruet::to_plural;
// use cruet::to_singular;
fn main() {
  let camel_case_string: String = to_camel_case("some_string");
}

Contributing

This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

Commit count: 252

cargo fmt