pub struct CodeTemplate {
pub name: String,
pub template_string: String,
pub parameters: Vec<TemplateParameter>,
pub constraints: Vec<TemplateConstraint>,
}Expand description
Code template for dynamic code generation
Fields§
§name: String§template_string: String§parameters: Vec<TemplateParameter>§constraints: Vec<TemplateConstraint>Implementations§
Source§impl CodeTemplate
impl CodeTemplate
Sourcepub fn add_parameter(&mut self, param: TemplateParameter)
pub fn add_parameter(&mut self, param: TemplateParameter)
Add a template parameter
Sourcepub fn add_constraint(&mut self, constraint: TemplateConstraint)
pub fn add_constraint(&mut self, constraint: TemplateConstraint)
Add a template constraint
Sourcepub fn instantiate(
&self,
parameters: &TemplateParameters,
generator: &DynamicCodeGenerator,
) -> JitResult<GeneratedCode>
pub fn instantiate( &self, parameters: &TemplateParameters, generator: &DynamicCodeGenerator, ) -> JitResult<GeneratedCode>
Instantiate the template with given parameters
Trait Implementations§
Source§impl Clone for CodeTemplate
impl Clone for CodeTemplate
Source§fn clone(&self) -> CodeTemplate
fn clone(&self) -> CodeTemplate
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for CodeTemplate
impl RefUnwindSafe for CodeTemplate
impl Send for CodeTemplate
impl Sync for CodeTemplate
impl Unpin for CodeTemplate
impl UnsafeUnpin for CodeTemplate
impl UnwindSafe for CodeTemplate
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more