pub trait Layer: Default {
// Required methods
fn with_bounds(bounds: Rectangle) -> Self;
fn bounds(&self) -> Rectangle;
fn flush(&mut self);
fn resize(&mut self, bounds: Rectangle);
fn reset(&mut self);
fn start(&self) -> usize;
fn end(&self) -> usize;
fn merge(&mut self, _layer: &mut Self);
}
Expand description
A layer of graphical primitives.
Layers normally dictate a set of primitives that are rendered in a specific order.
Required Methods§
Sourcefn with_bounds(bounds: Rectangle) -> Self
fn with_bounds(bounds: Rectangle) -> Self
Creates a new Layer
with the given bounds.
Sourcefn start(&self) -> usize
fn start(&self) -> usize
Returns the start level of the Layer
.
A level is a “sublayer” index inside of a Layer
.
A Layer
may draw multiple primitive types in a certain order.
The level represents the lowest index of the primitive types it
contains.
Two layers A and B can therefore be merged if they have the same bounds, and the end level of A is lower or equal than the start level of B.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.