gpui_router/
outlet.rs

1use gpui::*;
2
3pub fn outlet() -> impl IntoElement {
4  Outlet::new()
5}
6
7#[derive(IntoElement)]
8pub struct Outlet {
9  pub(crate) element: AnyElement,
10}
11
12impl Default for Outlet {
13  fn default() -> Self {
14    Outlet {
15      element: Empty {}.into_any_element(),
16    }
17  }
18}
19
20impl Outlet {
21  pub fn new() -> Self {
22    Default::default()
23  }
24}
25
26impl From<AnyElement> for Outlet {
27  fn from(element: AnyElement) -> Outlet {
28    Outlet { element }
29  }
30}
31
32impl RenderOnce for Outlet {
33  fn render(self, _window: &mut Window, _cx: &mut App) -> impl IntoElement {
34    self.element
35  }
36}