blob: fe1b53cb00ee1533970bae7e8f31fe666ca9f9fc (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
use proc_macro::TokenStream;
mod flag;
mod internal_repeat;
/// Core proc-macro: repeats a template body `count` times.
///
/// Internal call signature: `internal_repeat!(count => { template })`
#[proc_macro]
pub fn internal_repeat(input: TokenStream) -> TokenStream {
internal_repeat::internal_repeat(input)
}
/// Quick builder for `PickerFlag`.
///
/// # Syntax
///
/// ```ignore
/// use mingling_picker_macros::flag;
///
/// let basic = flag![name: String];
/// let with_short_name = flag![name: String, 'n'];
/// let with_short_alias = flag![name: String, 'n', "alias"];
/// let positional = flag![String];
/// let positional_with_name = flag![String, 'n', "alias"];
/// ```
#[proc_macro]
pub fn flag(input: TokenStream) -> TokenStream {
flag::flag(input)
}
|