aboutsummaryrefslogtreecommitdiff
path: root/rustversion/src/attr.rs
diff options
context:
space:
mode:
Diffstat (limited to 'rustversion/src/attr.rs')
-rw-r--r--rustversion/src/attr.rs35
1 files changed, 0 insertions, 35 deletions
diff --git a/rustversion/src/attr.rs b/rustversion/src/attr.rs
deleted file mode 100644
index 591b2c0..0000000
--- a/rustversion/src/attr.rs
+++ /dev/null
@@ -1,35 +0,0 @@
-use crate::expr::Expr;
-use proc_macro2::TokenStream;
-use syn::parse::{Parse, ParseStream, Result};
-use syn::Token;
-
-pub struct Args {
- pub condition: Expr,
- pub then: Then,
-}
-
-pub enum Then {
- Const(Token![const]),
- Attribute(TokenStream),
-}
-
-impl Parse for Args {
- fn parse(input: ParseStream) -> Result<Self> {
- let condition: Expr = input.parse()?;
-
- input.parse::<Token![,]>()?;
- if input.is_empty() {
- return Err(input.error("expected one or more attrs"));
- }
-
- let const_token: Option<Token![const]> = input.parse()?;
- let then = if let Some(const_token) = const_token {
- input.parse::<Option<Token![,]>>()?;
- Then::Const(const_token)
- } else {
- input.parse().map(Then::Attribute)?
- };
-
- Ok(Args { condition, then })
- }
-}