summaryrefslogtreecommitdiff
path: root/src/angle.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/angle.rs')
-rw-r--r--src/angle.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/angle.rs b/src/angle.rs
index 8cd71d96..aa5a1bef 100644
--- a/src/angle.rs
+++ b/src/angle.rs
@@ -89,6 +89,7 @@ impl Parse for Angle {
"deg" => Angle::from_degrees(value),
"grad" => Angle::from_degrees(value * 360.0 / 400.0),
"rad" => Angle::new(value),
+ "turn" => Angle::from_degrees(value * 360.0),
_ => {
return Err(loc.new_unexpected_token_error(token.clone()));
}
@@ -120,6 +121,10 @@ mod tests {
Angle::parse_str("-400grad").unwrap(),
Angle::from_degrees(-360.0)
);
+ assert_eq!(
+ Angle::parse_str("0.25turn").unwrap(),
+ Angle::from_degrees(90.0)
+ );
assert!(Angle::parse_str("").is_err());
assert!(Angle::parse_str("foo").is_err());