pub trait WithExpr:
Clone
+ Sized
+ WithPosition
+ WithType {
// Required methods
fn expr(&self) -> &Option<Expr>;
fn set_expr(&mut self, expr: Option<Expr>);
fn entries(&self) -> Entries;
// Provided methods
fn resolve_type_expr(&mut self, entries: &TypeEntries) -> Result<(), Error> { ... }
fn resolve_expr(
&self,
problem: &Problem,
entries: &Entries,
) -> Result<Self, Error> { ... }
fn check_parameter_size(&self, problem: &Problem) -> Result<(), Error> { ... }
fn check_type(&self, problem: &Problem) -> Result<(), Error> { ... }
}
Required Methods§
fn expr(&self) -> &Option<Expr>
fn set_expr(&mut self, expr: Option<Expr>)
fn entries(&self) -> Entries
Provided Methods§
fn resolve_type_expr(&mut self, entries: &TypeEntries) -> Result<(), Error>
fn resolve_expr( &self, problem: &Problem, entries: &Entries, ) -> Result<Self, Error>
fn check_parameter_size(&self, problem: &Problem) -> Result<(), Error>
fn check_type(&self, problem: &Problem) -> Result<(), Error>
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.