pub struct ResourcePropertyPath {
pub resource_type: String,
pub segments: Vec<PathSegment>,
}Expand description
A parsed Resources/<ResourceType>/Properties/... path from the rule tables.
These paths follow the format:
Resources/<resource_type>/Properties/<prop1>/<prop2>/...
where * segments represent iteration over array items or map entries.
Fields§
§resource_type: StringThe CloudFormation resource type (e.g. AWS::EC2::Instance).
segments: Vec<PathSegment>The property path segments after Resources/<type>/ (includes Properties).
Implementations§
Source§impl ResourcePropertyPath
impl ResourcePropertyPath
Sourcepub fn parse(raw: &str) -> Result<Self, String>
pub fn parse(raw: &str) -> Result<Self, String>
Parses a path string of the form Resources/<type>/Properties/<seg1>/....
Validation rules:
- Must start with
Resources/ - Resource type must be a nonempty AWS type (e.g.
AWS::S3::Bucket) - First segment after the type must be
Properties - No literal segment may be empty
Trait Implementations§
Source§impl Clone for ResourcePropertyPath
impl Clone for ResourcePropertyPath
Source§impl Debug for ResourcePropertyPath
impl Debug for ResourcePropertyPath
Source§impl<'de> Deserialize<'de> for ResourcePropertyPath
impl<'de> Deserialize<'de> for ResourcePropertyPath
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ResourcePropertyPath
Source§impl Hash for ResourcePropertyPath
impl Hash for ResourcePropertyPath
Source§impl PartialEq for ResourcePropertyPath
impl PartialEq for ResourcePropertyPath
Source§impl Serialize for ResourcePropertyPath
impl Serialize for ResourcePropertyPath
impl StructuralPartialEq for ResourcePropertyPath
Auto Trait Implementations§
impl Freeze for ResourcePropertyPath
impl RefUnwindSafe for ResourcePropertyPath
impl Send for ResourcePropertyPath
impl Sync for ResourcePropertyPath
impl Unpin for ResourcePropertyPath
impl UnsafeUnpin for ResourcePropertyPath
impl UnwindSafe for ResourcePropertyPath
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,
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
Compare self to
key and return true if they are equal.