pub trait LayoutEngine: Send + Sync {
// Required methods
fn id(&self) -> LayoutEngineId;
fn layout(
&self,
graph: &Graph,
request: &LayoutRequest,
context: &LayoutContext,
) -> Result<LayoutResult, LayoutError>;
}Expand description
Headless layout engine contract.
Required Methods§
Sourcefn id(&self) -> LayoutEngineId
fn id(&self) -> LayoutEngineId
Stable engine id.
Sourcefn layout(
&self,
graph: &Graph,
request: &LayoutRequest,
context: &LayoutContext,
) -> Result<LayoutResult, LayoutError>
fn layout( &self, graph: &Graph, request: &LayoutRequest, context: &LayoutContext, ) -> Result<LayoutResult, LayoutError>
Runs this layout engine.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".