From 76bf48f925bbddfc3bbd32eaea0d2e87b0ab07aa Mon Sep 17 00:00:00 2001 From: Vincent Prouillet Date: Tue, 17 Jan 2017 17:32:25 +0900 Subject: Remove need for attr_literals --- validator_derive/src/lib.rs | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'validator_derive/src') diff --git a/validator_derive/src/lib.rs b/validator_derive/src/lib.rs index 92f3ea5..fd02e3d 100644 --- a/validator_derive/src/lib.rs +++ b/validator_derive/src/lib.rs @@ -526,6 +526,8 @@ fn lit_to_string(lit: &syn::Lit) -> Option { fn lit_to_int(lit: &syn::Lit) -> Option { match *lit { syn::Lit::Int(ref s, _) => Some(*s), + // TODO: remove when attr_literals is stable + syn::Lit::Str(ref s, _) => Some(s.parse::().unwrap()), _ => None, } } @@ -534,6 +536,8 @@ fn lit_to_float(lit: &syn::Lit) -> Option { match *lit { syn::Lit::Float(ref s, _) => Some(s.parse::().unwrap()), syn::Lit::Int(ref s, _) => Some(*s as f64), + // TODO: remove when attr_literals is stable + syn::Lit::Str(ref s, _) => Some(s.parse::().unwrap()), _ => None, } } @@ -541,6 +545,7 @@ fn lit_to_float(lit: &syn::Lit) -> Option { fn lit_to_bool(lit: &syn::Lit) -> Option { match *lit { syn::Lit::Bool(ref s) => Some(*s), + syn::Lit::Str(ref s, _) => if s == "true" { Some(true) } else { Some(false) }, _ => None, } } -- cgit v1.2.3