diff options
author | HampusM <hampus@hampusmat.com> | 2022-11-12 20:21:21 +0100 |
---|---|---|
committer | HampusM <hampus@hampusmat.com> | 2022-11-12 20:21:21 +0100 |
commit | 6a8fb450b5ac3e365455abe783757b7376bd1b08 (patch) | |
tree | 3feea823bc1420fbcea5f097fd9f309af5744cef /test_util_macros/src | |
parent | 7793779ce197fa0c917d0ef312bfa9bcfcb64790 (diff) |
test: replace the test_util_macros crate with utility-macros
Diffstat (limited to 'test_util_macros/src')
-rw-r--r-- | test_util_macros/src/lib.rs | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/test_util_macros/src/lib.rs b/test_util_macros/src/lib.rs deleted file mode 100644 index aa87ecf..0000000 --- a/test_util_macros/src/lib.rs +++ /dev/null @@ -1,47 +0,0 @@ -#![deny(clippy::all)] -#![deny(clippy::pedantic)] -#![deny(missing_docs)] - -//! Internal macros used by tests. - -use std::iter::repeat; - -use proc_macro::TokenStream; -use quote::quote; -use syn::parse::Parse; -use syn::{parse_macro_input, LitChar, LitInt, Token}; - -/// Repeats a character N number of times. -#[proc_macro] -pub fn repeat_char(input: TokenStream) -> TokenStream -{ - let RepeatMacroArgs { character, count } = - parse_macro_input!(input as RepeatMacroArgs); - - let repeated = repeat(character.value()).take(count).collect::<String>(); - - quote! { - #repeated - } - .into() -} - -struct RepeatMacroArgs -{ - character: LitChar, - count: usize, -} - -impl Parse for RepeatMacroArgs -{ - fn parse(input: syn::parse::ParseStream) -> syn::Result<Self> - { - let character = input.parse::<LitChar>()?; - - input.parse::<Token![,]>()?; - - let count = input.parse::<LitInt>()?.base10_parse::<usize>()?; - - Ok(Self { character, count }) - } -} |