Added newton meter

This commit is contained in:
Kasper 2020-01-11 04:50:31 +01:00
parent 539568c5b5
commit 8a232f72f0
2 changed files with 4 additions and 1 deletions

View File

@ -57,7 +57,7 @@ pub fn lex(input: &str) -> Result<TokenVector, String> {
let string = &input[start_index..=end_index];
match string.trim_end() {
// allow for two-word units
"nautical" | "light" | "sq" | "square" | "cubic" | "metric" => {
"nautical" | "light" | "sq" | "square" | "cubic" | "metric" | "newton" => {
byte_index += current_char.len_utf8();
chars.next();
end_index += 1;
@ -213,6 +213,7 @@ pub fn lex(input: &str) -> Result<TokenVector, String> {
"millijoule" | "millijoules" => tokens.push(Token::Unit(Millijoule)),
"j"| "joule" | "joules" => tokens.push(Token::Unit(Joule)),
"nm" | "newton meter" | "newton meters" | "newton-meter" | "newton-meters" => tokens.push(Token::Unit(NewtonMeter)),
"kj" | "kilojoule" | "kilojoules" => tokens.push(Token::Unit(Kilojoule)),
"mj" | "megajoule" | "megajoules" => tokens.push(Token::Unit(Megajoule)),
"gj" | "gigajoule" | "gigajoules" => tokens.push(Token::Unit(Gigajoule)),

View File

@ -157,6 +157,7 @@ create_units!(
Millijoule: (Energy, d128!(0.001)),
Joule: (Energy, d128!(1)),
NewtonMeter: (Energy, d128!(1)),
Kilojoule: (Energy, d128!(1000)),
Megajoule: (Energy, d128!(1000000)),
Gigajoule: (Energy, d128!(1000000000)),
@ -361,6 +362,7 @@ mod tests {
assert_eq!(convert_test(1000.0, Millijoule, Joule), 1.0);
assert_eq!(convert_test(1000.0, Joule, Kilojoule), 1.0);
assert_eq!(convert_test(1.0, NewtonMeter, Joule), 1.0);
assert_eq!(convert_test(1000.0, Kilojoule, Megajoule), 1.0);
assert_eq!(convert_test(1000.0, Megajoule, Gigajoule), 1.0);
assert_eq!(convert_test(1000.0, Gigajoule, Terajoule), 1.0);