use crate::preludes::shader_creation::*;
pub struct ShaderDyn {
pub shader: Box<dyn Shader>,
}
impl ShaderDyn {
pub fn new(shader: Box<dyn Shader>) -> Self {
Self {
shader,
}
}
}
impl Shader for ShaderDyn {
fn apply(&mut self, canvas: &Canvas, position: Position, content: Option<&Content>) -> Option<Content> {
return self.shader.apply(canvas, position, content);
}
fn config(&self) -> ShaderConfig {
return self.shader.config();
}
}