luau_parser_derive/
lib.rs

1#![doc = include_str!("../README.md")]
2#![deny(unsafe_code)]
3#![warn(clippy::missing_docs_in_private_items)]
4#![warn(missing_docs)]
5#![warn(clippy::absolute_paths)]
6#![warn(clippy::missing_const_for_fn)]
7#![deny(unused_must_use)]
8#![deny(dead_code)]
9#![deny(unused_assignments)]
10#![warn(clippy::missing_errors_doc)]
11#![warn(clippy::missing_panics_doc)]
12#![warn(clippy::doc_markdown)]
13#![warn(clippy::module_name_repetitions)]
14#![warn(clippy::wildcard_imports)]
15#![warn(clippy::too_many_arguments)]
16#![warn(clippy::large_types_passed_by_value)]
17#![warn(clippy::needless_pass_by_value)]
18#![warn(clippy::inefficient_to_string)]
19#![warn(clippy::unwrap_used)]
20#![warn(clippy::expect_used)]
21#![warn(clippy::nursery)]
22
23#[macro_use]
24mod macros;
25
26mod print;
27mod range;
28
29use proc_macro::TokenStream;
30
31/// The `#[Derive(Range)]` macro.
32#[proc_macro_derive(Range, attributes(range_or))]
33#[inline]
34pub fn range(input: TokenStream) -> TokenStream {
35    range::generate(input)
36}
37
38/// The `#[Derive(Print)]` macro.
39#[proc_macro_derive(Print)]
40#[inline]
41pub fn print(input: TokenStream) -> TokenStream {
42    print::generate(input)
43}