pub trait Language {
type Ast;
// Required method
fn try_parse(source: &SourceFile) -> Result<Self::Ast, ParseError>;
// Provided method
fn parse(source: &SourceFile) -> Self::Ast { ... }
}
Required Associated Types§
Required Methods§
Sourcefn try_parse(source: &SourceFile) -> Result<Self::Ast, ParseError>
fn try_parse(source: &SourceFile) -> Result<Self::Ast, ParseError>
Tries to parse a source file. Returns an error if parsing failed.
Provided Methods§
Sourcefn parse(source: &SourceFile) -> Self::Ast
fn parse(source: &SourceFile) -> Self::Ast
parses a source file into an AST. Panics (and nicely displays an error) when the parse failed.
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.