GeneratedCode

Struct GeneratedCode 

Source
pub struct GeneratedCode {
    pub code: String,
    pub module_name: String,
    pub source_file: PathBuf,
    pub timestamp: SystemTime,
    pub validated: bool,
}
Expand description

Container for generated Rust code with metadata

This structure holds generated code along with metadata about the source file and validation status. It provides methods for validating and formatting the generated code.

Fields§

§code: String

Generated Rust source code

§module_name: String

Module path (e.g., “ui_window”)

§source_file: PathBuf

Source .dampen file path

§timestamp: SystemTime

Generated at timestamp

§validated: bool

Validation status

Implementations§

Source§

impl GeneratedCode

Source

pub fn new(code: String, module_name: String, source_file: PathBuf) -> Self

Create a new GeneratedCode instance

§Arguments
  • code - The generated Rust source code
  • module_name - Module name (e.g., “ui_window”)
  • source_file - Path to the source .dampen file
§Returns

A new GeneratedCode instance with validated set to false

Source

pub fn validate(&mut self) -> Result<(), String>

Validate syntax by parsing with syn

§Returns

Ok(()) if the code is valid Rust, Err with message otherwise

Source

pub fn format(&mut self) -> Result<(), String>

Format code with prettyplease

§Returns

Ok(()) if formatting succeeded, Err with message otherwise

Source

pub fn write_to_file(&self, path: &Path) -> Result<()>

Write to output directory

§Arguments
  • path - Path to write the generated code to
§Returns

Ok(()) if write succeeded, Err with IO error otherwise

Trait Implementations§

Source§

impl Clone for GeneratedCode

Source§

fn clone(&self) -> GeneratedCode

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GeneratedCode

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.