pub struct ResourceEntry {
pub display_name: Option<String>,
pub description: Option<String>,
pub config: Resource,
pub lifecycle: ResourceLifecycle,
pub dependencies: Vec<ResourceRef>,
pub remote_access: bool,
pub enabled_when: Option<String>,
}Fields§
§display_name: Option<String>Optional human-readable name. The stable resource ID is the display fallback.
description: Option<String>Authored purpose, displayed as plain text. Does not affect resource configuration.
config: ResourceResource configuration (can be any type of resource)
lifecycle: ResourceLifecycleLifecycle management configuration for this resource
dependencies: Vec<ResourceRef>Additional dependencies for this resource beyond those defined in the resource itself. The total dependencies are: resource.get_dependencies() + this list
remote_access: boolEnable remote bindings for this resource (BYOB use case).
When true, binding params are synced to StackState’s remote_binding_params.
Default: false (prevents sensitive data in synced state).
enabled_when: Option<String>Id of the boolean stack input that decides whether this resource is
created at all. None means always create it.
Set by .enabled(input) in the SDK. Setup emitters render the resource
conditionally on the matching template variable, so a deployer who says no
never gets the resource, its outputs, or anything derived from it.
Implementations§
Source§impl ResourceEntry
impl ResourceEntry
Sourcepub fn new<T: ResourceDefinition>(
resource: T,
lifecycle: ResourceLifecycle,
) -> Self
pub fn new<T: ResourceDefinition>( resource: T, lifecycle: ResourceLifecycle, ) -> Self
Creates a resource entry with no presentation metadata.
Sourcepub fn display_name(self, name: impl Into<String>) -> Self
pub fn display_name(self, name: impl Into<String>) -> Self
Sets the human-readable name without changing the stable resource ID.
Sourcepub fn description(self, description: impl Into<String>) -> Self
pub fn description(self, description: impl Into<String>) -> Self
Describes this resource’s purpose without changing its runtime configuration.
pub fn display_name_or_id(&self) -> &str
Sourcepub fn combined_dependencies(&self) -> Vec<ResourceRef>
pub fn combined_dependencies(&self) -> Vec<ResourceRef>
Returns intrinsic and stack-authored dependencies in planner order.
Sourcepub fn has_remote_bindings(&self) -> bool
pub fn has_remote_bindings(&self) -> bool
Returns whether this resource is published through Remote Bindings.
Provider emitters use this generic signal to create the stack-level Remote Bindings identity. Each resource emitter remains responsible for granting that identity only the resource’s declared data-plane access.
Sourcepub fn publishes_binding_params(&self) -> bool
pub fn publishes_binding_params(&self) -> bool
Whether the controller’s non-secret binding locator must be synchronized into stack state. Reserved vault locators support secret sync and metadata checks, without exposing either vault through the Remote Bindings API.
Trait Implementations§
Source§impl Clone for ResourceEntry
impl Clone for ResourceEntry
Source§impl Debug for ResourceEntry
impl Debug for ResourceEntry
Source§impl<'de> Deserialize<'de> for ResourceEntry
impl<'de> Deserialize<'de> for ResourceEntry
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for ResourceEntry
Source§impl PartialEq for ResourceEntry
impl PartialEq for ResourceEntry
Source§impl Serialize for ResourceEntry
impl Serialize for ResourceEntry
impl StructuralPartialEq for ResourceEntry
Auto Trait Implementations§
impl !RefUnwindSafe for ResourceEntry
impl !UnwindSafe for ResourceEntry
impl Forget for ResourceEntry
impl Freeze for ResourceEntry
impl Move for ResourceEntry
impl Send for ResourceEntry
impl Sync for ResourceEntry
impl Unpin for ResourceEntry
impl UnsafeUnpin for ResourceEntry
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.