pub struct FastHydrationPlugin { /* private fields */ }Expand description
FAST Hydration handler plugin.
Emits HTML comment markers around dynamic bindings so that FAST-HTML can re-hydrate server-rendered content on the client side.
The root scope is disabled (no markers) — hydration only activates in child scopes (components, for-loop items, if-condition bodies). This matches the C++ and JS prototype behavior.
Implementations§
Trait Implementations§
Source§impl Default for FastHydrationPlugin
impl Default for FastHydrationPlugin
Source§impl HandlerPlugin for FastHydrationPlugin
impl HandlerPlugin for FastHydrationPlugin
Source§fn write_route_component_state(
&self,
state: &Value,
writer: &mut dyn ResponseWriter,
) -> Result<()>
fn write_route_component_state( &self, state: &Value, writer: &mut dyn ResponseWriter, ) -> Result<()>
FAST emits scalar attributes + data-state JSON on route component elements.
Components read these via @attr and prepare().
Source§fn push_scope(&mut self)
fn push_scope(&mut self)
Enter a new scope (component or for-loop item boundary).
Typically resets per-scope counters.
Source§fn on_binding_start(
&mut self,
name: &str,
writer: &mut dyn ResponseWriter,
) -> Result<()>
fn on_binding_start( &mut self, name: &str, writer: &mut dyn ResponseWriter, ) -> Result<()>
Called before rendering a signal binding.
Source§fn on_binding_end(
&mut self,
name: &str,
writer: &mut dyn ResponseWriter,
) -> Result<()>
fn on_binding_end( &mut self, name: &str, writer: &mut dyn ResponseWriter, ) -> Result<()>
Called after rendering a signal binding.
Source§fn on_repeat_item_start(
&mut self,
index: usize,
writer: &mut dyn ResponseWriter,
) -> Result<()>
fn on_repeat_item_start( &mut self, index: usize, writer: &mut dyn ResponseWriter, ) -> Result<()>
Called before rendering a repeat item in a for loop.
Source§fn on_repeat_item_end(
&mut self,
index: usize,
writer: &mut dyn ResponseWriter,
) -> Result<()>
fn on_repeat_item_end( &mut self, index: usize, writer: &mut dyn ResponseWriter, ) -> Result<()>
Called after rendering a repeat item.
Source§fn on_element_data(
&mut self,
data: &[u8],
writer: &mut dyn ResponseWriter,
) -> Result<()>
fn on_element_data( &mut self, data: &[u8], writer: &mut dyn ResponseWriter, ) -> Result<()>
Called when parser-produced element metadata is encountered.
Source§fn on_for_start(
&mut self,
name: &str,
writer: &mut dyn ResponseWriter,
) -> Result<()>
fn on_for_start( &mut self, name: &str, writer: &mut dyn ResponseWriter, ) -> Result<()>
Called before rendering a for-loop block.
Defaults to
on_binding_start.Source§fn on_for_end(
&mut self,
name: &str,
writer: &mut dyn ResponseWriter,
) -> Result<()>
fn on_for_end( &mut self, name: &str, writer: &mut dyn ResponseWriter, ) -> Result<()>
Called after rendering a for-loop block.
Defaults to
on_binding_end.Source§fn on_if_start(
&mut self,
name: &str,
writer: &mut dyn ResponseWriter,
) -> Result<()>
fn on_if_start( &mut self, name: &str, writer: &mut dyn ResponseWriter, ) -> Result<()>
Called before rendering an if-condition block.
Defaults to
on_binding_start.Source§fn on_if_end(
&mut self,
name: &str,
writer: &mut dyn ResponseWriter,
) -> Result<()>
fn on_if_end( &mut self, name: &str, writer: &mut dyn ResponseWriter, ) -> Result<()>
Called after rendering an if-condition block.
Defaults to
on_binding_end.Source§fn emit_templates(
&self,
protocol: &WebUIProtocol,
components: &HashSet<String>,
_nonce: Option<&str>,
writer: &mut dyn ResponseWriter,
) -> Result<()>
fn emit_templates( &self, protocol: &WebUIProtocol, components: &HashSet<String>, _nonce: Option<&str>, writer: &mut dyn ResponseWriter, ) -> Result<()>
Emit component templates collected during SSR. The default emits
each template as-is (suitable for FAST
<f-template> tags). The
WebUI plugin overrides this to wrap all raw JS IIFE templates in a
single <script> tag.Auto Trait Implementations§
impl Freeze for FastHydrationPlugin
impl RefUnwindSafe for FastHydrationPlugin
impl Send for FastHydrationPlugin
impl Sync for FastHydrationPlugin
impl Unpin for FastHydrationPlugin
impl UnsafeUnpin for FastHydrationPlugin
impl UnwindSafe for FastHydrationPlugin
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more