pub struct NixBackend;Expand description
The Nix backend: Backend impl producing Nix expression files.
Trait Implementations§
Source§impl Backend for NixBackend
impl Backend for NixBackend
Source§fn naming(&self) -> &dyn NamingConvention
fn naming(&self) -> &dyn NamingConvention
Get the naming convention for this platform.
Source§fn generate_resource(
&self,
resource: &IacResource,
provider: &IacProvider,
) -> Result<Vec<GeneratedArtifact>, IacForgeError>
fn generate_resource( &self, resource: &IacResource, provider: &IacProvider, ) -> Result<Vec<GeneratedArtifact>, IacForgeError>
Generate artifacts for a single resource. Read more
Source§fn generate_data_source(
&self,
ds: &IacDataSource,
provider: &IacProvider,
) -> Result<Vec<GeneratedArtifact>, IacForgeError>
fn generate_data_source( &self, ds: &IacDataSource, provider: &IacProvider, ) -> Result<Vec<GeneratedArtifact>, IacForgeError>
Generate artifacts for a single data source. Read more
Source§fn generate_provider(
&self,
provider: &IacProvider,
resources: &[IacResource],
data_sources: &[IacDataSource],
) -> Result<Vec<GeneratedArtifact>, IacForgeError>
fn generate_provider( &self, provider: &IacProvider, resources: &[IacResource], data_sources: &[IacDataSource], ) -> Result<Vec<GeneratedArtifact>, IacForgeError>
Generate provider-level artifacts (registration, configuration). Read more
Source§fn generate_test(
&self,
_resource: &IacResource,
_provider: &IacProvider,
) -> Result<Vec<GeneratedArtifact>, IacForgeError>
fn generate_test( &self, _resource: &IacResource, _provider: &IacProvider, ) -> Result<Vec<GeneratedArtifact>, IacForgeError>
Generate test artifacts for a resource. Read more
Source§fn generate_action(
&self,
_action: &IacAction,
_provider: &IacProvider,
) -> Result<Vec<GeneratedArtifact>, IacForgeError>
fn generate_action( &self, _action: &IacAction, _provider: &IacProvider, ) -> Result<Vec<GeneratedArtifact>, IacForgeError>
Generate artifacts for a single RPC-style action. Read more
Source§fn validate_resource(
&self,
_resource: &IacResource,
_provider: &IacProvider,
) -> Vec<String>
fn validate_resource( &self, _resource: &IacResource, _provider: &IacProvider, ) -> Vec<String>
Validate an
IacResource before generation. Read moreSource§fn generate_all(
&self,
provider: &IacProvider,
resources: &[IacResource],
data_sources: &[IacDataSource],
) -> Result<Vec<GeneratedArtifact>, IacForgeError>
fn generate_all( &self, provider: &IacProvider, resources: &[IacResource], data_sources: &[IacDataSource], ) -> Result<Vec<GeneratedArtifact>, IacForgeError>
Generate all artifacts for a complete provider in one batch. Read more
Source§impl Clone for NixBackend
impl Clone for NixBackend
impl Copy for NixBackend
Source§impl Debug for NixBackend
impl Debug for NixBackend
Auto Trait Implementations§
impl Freeze for NixBackend
impl RefUnwindSafe for NixBackend
impl Send for NixBackend
impl Sync for NixBackend
impl Unpin for NixBackend
impl UnsafeUnpin for NixBackend
impl UnwindSafe for NixBackend
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<B> Morphism<ResourceInput<'_>, Vec<GeneratedArtifact>> for Bwhere
B: Backend,
impl<B> Morphism<ResourceInput<'_>, Vec<GeneratedArtifact>> for Bwhere
B: Backend,
Source§fn name(&self) -> &'static str
fn name(&self) -> &'static str
Human-readable name for diagnostics, traceability, attestation.
Source§fn apply(&self, src: &ResourceInput<'_>) -> Vec<GeneratedArtifact>
fn apply(&self, src: &ResourceInput<'_>) -> Vec<GeneratedArtifact>
Apply the morphism. Must be total and deterministic.
Source§impl<B> ProvenMorphism<ResourceInput<'_>, Vec<GeneratedArtifact>> for Bwhere
B: Backend,
impl<B> ProvenMorphism<ResourceInput<'_>, Vec<GeneratedArtifact>> for Bwhere
B: Backend,
Source§fn check_invariants(
&self,
src: &ResourceInput<'_>,
dst: &Vec<GeneratedArtifact>,
) -> Vec<String>
fn check_invariants( &self, src: &ResourceInput<'_>, dst: &Vec<GeneratedArtifact>, ) -> Vec<String>
Return violations (empty = all invariants hold).