summaryrefslogtreecommitdiff
path: root/crates/typst-macros
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2025-02-05 14:24:10 +0100
committerGitHub <noreply@github.com>2025-02-05 13:24:10 +0000
commit029ae4a5ea7ad1e52112ce26b6d38ce1750dae3f (patch)
tree0c56e8c9898efff5e6735750e4291605e25a0d3f /crates/typst-macros
parent25f6a7ab161b2106c22a9997a68afee60ddb7412 (diff)
Export target docs (#5812)
Co-authored-by: Martin Haug <3874949+reknih@users.noreply.github.com>
Diffstat (limited to 'crates/typst-macros')
-rw-r--r--crates/typst-macros/src/category.rs59
-rw-r--r--crates/typst-macros/src/lib.rs10
2 files changed, 0 insertions, 69 deletions
diff --git a/crates/typst-macros/src/category.rs b/crates/typst-macros/src/category.rs
deleted file mode 100644
index 26ec879c..00000000
--- a/crates/typst-macros/src/category.rs
+++ /dev/null
@@ -1,59 +0,0 @@
-use heck::{ToKebabCase, ToTitleCase};
-use proc_macro2::TokenStream;
-use quote::quote;
-use syn::parse::{Parse, ParseStream};
-use syn::{Attribute, Ident, Result, Token, Type, Visibility};
-
-use crate::util::{documentation, foundations};
-
-/// Expand the `#[category]` macro.
-pub fn category(_: TokenStream, item: syn::Item) -> Result<TokenStream> {
- let syn::Item::Verbatim(stream) = item else {
- bail!(item, "expected bare static");
- };
-
- let BareStatic { attrs, vis, ident, ty, .. } = syn::parse2(stream)?;
-
- let name = ident.to_string().to_kebab_case();
- let title = name.to_title_case();
- let docs = documentation(&attrs);
-
- Ok(quote! {
- #(#attrs)*
- #[allow(rustdoc::broken_intra_doc_links)]
- #vis static #ident: #ty = {
- static DATA: #foundations::CategoryData = #foundations::CategoryData {
- name: #name,
- title: #title,
- docs: #docs,
- };
- #foundations::Category::from_data(&DATA)
- };
- })
-}
-
-/// Parse a bare `pub static CATEGORY: Category;` item.
-#[allow(dead_code)]
-pub struct BareStatic {
- pub attrs: Vec<Attribute>,
- pub vis: Visibility,
- pub static_token: Token![static],
- pub ident: Ident,
- pub colon_token: Token![:],
- pub ty: Type,
- pub semi_token: Token![;],
-}
-
-impl Parse for BareStatic {
- fn parse(input: ParseStream) -> Result<Self> {
- Ok(Self {
- attrs: input.call(Attribute::parse_outer)?,
- vis: input.parse()?,
- static_token: input.parse()?,
- ident: input.parse()?,
- colon_token: input.parse()?,
- ty: input.parse()?,
- semi_token: input.parse()?,
- })
- }
-}
diff --git a/crates/typst-macros/src/lib.rs b/crates/typst-macros/src/lib.rs
index 578389c7..82e63ddc 100644
--- a/crates/typst-macros/src/lib.rs
+++ b/crates/typst-macros/src/lib.rs
@@ -5,7 +5,6 @@ extern crate proc_macro;
#[macro_use]
mod util;
mod cast;
-mod category;
mod elem;
mod func;
mod scope;
@@ -266,15 +265,6 @@ pub fn scope(stream: BoundaryStream, item: BoundaryStream) -> BoundaryStream {
.into()
}
-/// Defines a category of definitions.
-#[proc_macro_attribute]
-pub fn category(stream: BoundaryStream, item: BoundaryStream) -> BoundaryStream {
- let item = syn::parse_macro_input!(item as syn::Item);
- category::category(stream.into(), item)
- .unwrap_or_else(|err| err.to_compile_error())
- .into()
-}
-
/// Implements `Reflect`, `FromValue`, and `IntoValue` for a type.
///
/// - `Reflect` makes Typst's runtime aware of the type's characteristics.