pub trait ConvertString {
// Required methods
fn is_keyword(&self) -> bool;
fn to_pascal_case(&self) -> String;
fn to_snake_case(&self) -> String;
fn to_valid_key(&self, prefix: &str) -> String;
fn remove_namespace(&self) -> String;
}Required Methods§
Sourcefn is_keyword(&self) -> bool
fn is_keyword(&self) -> bool
return true if the String is a reserved keyword
Example
use convert_string:: ConvertString;
assert_eq!(false, String::from("name").is_keyword());
assert_eq!(true, String::from("type").is_keyword());Sourcefn to_pascal_case(&self) -> String
fn to_pascal_case(&self) -> String
transform String to PascalCase
Example
use convert_string:: ConvertString;
assert_eq!("Name", String::from("name").to_pascal_case());
assert_eq!("WithSpaces", String::from("with spaces").to_pascal_case());
assert_eq!("YdTax", String::from("yd_tax").to_pascal_case());
assert_eq!("EdgeCase", String::from("edge-case").to_pascal_case());
assert_eq!("YdTax", String::from("YdTax").to_pascal_case());
assert_eq!("VendorRateId", String::from("VendorRateID").to_pascal_case());
assert_eq!("MvciModuleDescription", String::from("MVCI_MODULE_DESCRIPTION").to_pascal_case());
assert_eq!("HttpresponseCode", String::from("HTTPResponseCode").to_pascal_case());
assert_eq!("Pintype", String::from("PINTYPE").to_pascal_case());
assert_eq!("КоммерческаяИнформация", String::from("КоммерческаяИнформация").to_pascal_case());
assert_eq!("Коммерческаяинформация", String::from("КОММЕРЧЕСКАЯИНФОРМАЦИЯ").to_pascal_case());
assert_eq!("Коммерческаяинформация", String::from("коммерческаяинформация").to_pascal_case());Sourcefn to_snake_case(&self) -> String
fn to_snake_case(&self) -> String
transform String to snake_case
Example
use convert_string:: ConvertString;
assert_eq!("name", String::from("name").to_snake_case());
assert_eq!("with_spaces", String::from("with spaces").to_snake_case());
assert_eq!("yd_tax", String::from("yd_tax").to_snake_case());
assert_eq!("edge_case", String::from("edge-case").to_snake_case());
assert_eq!("yd_tax", String::from("YdTax").to_snake_case());
assert_eq!("vendor_rate_id", String::from("VendorRateID").to_snake_case());
assert_eq!("_id_context", String::from("_ID_Context").to_snake_case());
assert_eq!("mvci_module_description", String::from("MVCI_MODULE_DESCRIPTION").to_snake_case());
assert_eq!("pintype", String::from("PINTYPE").to_snake_case());
assert_eq!("коммерческая_информация", String::from("КоммерческаяИнформация").to_snake_case());Sourcefn to_valid_key(&self, prefix: &str) -> String
fn to_valid_key(&self, prefix: &str) -> String
convert the String, if it is a reserved keyword. In that case add the prefix and an underscore
Example
use convert_string:: ConvertString;
assert_eq!("not_a_keyword", String::from("not_a_keyword").to_valid_key(&String::from("r")));
assert_eq!("no_keyword", String::from("NoKeyword").to_valid_key(&String::from("r")));
assert_eq!("r_type", String::from("type").to_valid_key(&String::from("r")));
assert_eq!("r_type", String::from("Type").to_valid_key(&String::from("r")));
assert_eq!("r_abstract", String::from("abstract").to_valid_key(&String::from("r")));Sourcefn remove_namespace(&self) -> String
fn remove_namespace(&self) -> String
given an XML like namespace string (ns:name), return the part after the colon
Example
use convert_string:: ConvertString;
assert_eq!("name", String::from("name").remove_namespace());
assert_eq!("name", String::from("ns:name").remove_namespace());Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl ConvertString for String
impl ConvertString for String
Source§fn is_keyword(&self) -> bool
fn is_keyword(&self) -> bool
return true if the String is a reserved keyword
Source§fn to_pascal_case(&self) -> String
fn to_pascal_case(&self) -> String
transform String to PascalCase
Source§fn to_snake_case(&self) -> String
fn to_snake_case(&self) -> String
transform String to snake_case
Source§fn to_valid_key(&self, prefix: &str) -> String
fn to_valid_key(&self, prefix: &str) -> String
convert the String, if it is a reserved keyword. In that case add the prefix and an underscore
Source§fn remove_namespace(&self) -> String
fn remove_namespace(&self) -> String
given an XML like namespace string (ns:name), return the part after the colon