Re-enable proc-macros

This commit is contained in:
Lukas Wirth 2023-11-28 16:28:51 +01:00
parent 98cfdde8ba
commit b98597f06d
24 changed files with 787 additions and 493 deletions

View file

@ -543,6 +543,9 @@ impl ProcMacroExpander for IdentityProcMacroExpander {
subtree: &Subtree<SpanData>,
_: Option<&Subtree<SpanData>>,
_: &Env,
_: SpanData,
_: SpanData,
_: SpanData,
) -> Result<Subtree<SpanData>, ProcMacroExpansionError> {
Ok(subtree.clone())
}
@ -557,6 +560,9 @@ impl ProcMacroExpander for AttributeInputReplaceProcMacroExpander {
_: &Subtree<SpanData>,
attrs: Option<&Subtree<SpanData>>,
_: &Env,
_: SpanData,
_: SpanData,
_: SpanData,
) -> Result<Subtree<SpanData>, ProcMacroExpansionError> {
attrs
.cloned()
@ -572,6 +578,9 @@ impl ProcMacroExpander for MirrorProcMacroExpander {
input: &Subtree<SpanData>,
_: Option<&Subtree<SpanData>>,
_: &Env,
_: SpanData,
_: SpanData,
_: SpanData,
) -> Result<Subtree<SpanData>, ProcMacroExpansionError> {
fn traverse(input: &Subtree<SpanData>) -> Subtree<SpanData> {
let mut token_trees = vec![];
@ -599,6 +608,9 @@ impl ProcMacroExpander for ShortenProcMacroExpander {
input: &Subtree<SpanData>,
_: Option<&Subtree<SpanData>>,
_: &Env,
_: SpanData,
_: SpanData,
_: SpanData,
) -> Result<Subtree<SpanData>, ProcMacroExpansionError> {
return Ok(traverse(input));