DioxusLabs/dioxus · error · syn::Error
Attempted to exclude a layout that does not exist
Error message
Attempted to exclude a layout that does not exist
What it means
Error "Attempted to exclude a layout that does not exist" thrown in DioxusLabs/dioxus.
Source
Thrown at packages/router-macro/src/lib.rs:386
for mut segment in iter {
segment.children.push(current);
current = segment;
}
children.push(current);
}
} else if attr.path().is_ident("layout") {
let parser = |input: ParseStream| {
let bang: Option<Token![!]> = input.parse().ok();
let exclude = bang.is_some();
Ok((exclude, Layout::parse(input, nest_stack.clone())?))
};
let (exclude, layout): (bool, Layout) = attr.parse_args_with(parser)?;
if exclude {
let Some(layout_index) = layouts.iter().position(|l| l.comp == layout.comp)
else {
return Err(syn::Error::new(
Span::call_site(),
"Attempted to exclude a layout that does not exist",
));
};
excluded.push(LayoutId(layout_index));
} else {
let layout_index = layouts.len();
layouts.push(layout);
layout_stack.push(LayoutId(layout_index));
}
} else if attr.path().is_ident("end_layout") {
layout_stack.pop();
} else if attr.path().is_ident("redirect") {
let parser = |input: ParseStream| {
Redirect::parse(input, nest_stack.clone(), endpoints.len())
};
let redirect = attr.parse_args_with(parser)?;
endpoints.push(RouteEndpoint::Redirect(redirect));View on GitHub (pinned to 393d190a80)
When it happens
Trigger: Thrown at packages/router-macro/src/lib.rs:386 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of DioxusLabs/dioxus@393d190a80 (2026-08-16).
Data as JSON: /api/errors/c734183cc83f0c12.
Report an issue: GitHub.