Allow namespace to be given as a quoted string
diff --git a/syntax/namespace.rs b/syntax/namespace.rs
index bdfb845..49b31d1 100644
--- a/syntax/namespace.rs
+++ b/syntax/namespace.rs
@@ -32,7 +32,9 @@
         if !input.is_empty() {
             input.parse::<kw::namespace>()?;
             input.parse::<Token![=]>()?;
-            segments = input.call(QualifiedName::parse_unquoted)?.segments;
+            segments = input
+                .call(QualifiedName::parse_quoted_or_unquoted)?
+                .segments;
             input.parse::<Option<Token![,]>>()?;
         }
         Ok(Namespace { segments })
diff --git a/syntax/qualified.rs b/syntax/qualified.rs
index a340093..be9bceb 100644
--- a/syntax/qualified.rs
+++ b/syntax/qualified.rs
@@ -1,6 +1,6 @@
 use syn::ext::IdentExt;
 use syn::parse::{ParseStream, Result};
-use syn::{Ident, Token};
+use syn::{Ident, LitStr, Token};
 
 pub struct QualifiedName {
     pub segments: Vec<Ident>,
@@ -23,4 +23,13 @@
         }
         Ok(QualifiedName { segments })
     }
+
+    pub fn parse_quoted_or_unquoted(input: ParseStream) -> Result<Self> {
+        if input.peek(LitStr) {
+            let lit: LitStr = input.parse()?;
+            lit.parse_with(Self::parse_unquoted)
+        } else {
+            Self::parse_unquoted(input)
+        }
+    }
 }