pub struct Arn { /* private fields */ }
Expand description

An Amazon Resource Name (ARN) representing an exact resource.

This is used to represent a known resource, such as an S3 bucket, EC2 instance, assumed role instance, etc. This is not used to represent resource statements in the IAM Aspen policy language, which may contain wildcards. For ARNs used to match resource statements, see ArnPattern.

Arn objects are immutable.

Implementations

Create a new ARN from the specified components.

  • partition - The partition the resource is in (required). This is usually aws, aws-cn, or aws-us-gov for actual AWS resources, but may be any string meeting the rules specified in validate_partition for non-AWS resources.
  • service - The service the resource belongs to (required). This is a service name like ec2 or s3. Non-AWS resources must conform to the naming rules specified in validate_service.
  • region - The region the resource is in (optional). If the resource is regional (and may other regions may have the resources with the same name), this is the region name. If the resource is global, this is empty.
  • account_id - The account ID the resource belongs to (optional). This is the 12-digit account ID or the string aws for certain AWS-owned resources. Some resources (such as S3 buckets and objects) do not need the account ID (the bucket name is globally unique within a partition), so this may be empty.
  • resource - The resource name (required). This is the name of the resource. The formatting is service-specific, but must be a valid UTF-8 string.

If any of the arguments are invalid, an ArnError is returned.

Retrieve the partition the resource is in.

Retrieve the service the resource belongs to.

Retrieve the region the resource is in.

Retrieve the account ID the resource belongs to.

Retrieve the resource name.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Deserialize this value from the given Serde deserializer. Read more

Return the ARN.

Parse an ARN from a string.

The associated error which can be returned from parsing.
Feeds this value into the given Hasher. Read more
Feeds a slice of this type into the given Hasher. Read more
This method returns an Ordering between self and other. Read more
Compares and returns the maximum of two values. Read more
Compares and returns the minimum of two values. Read more
Restrict a value to a certain interval. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more
This method returns an ordering between self and other values if one exists. Read more
This method tests less than (for self and other) and is used by the < operator. Read more
This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
This method tests greater than (for self and other) and is used by the > operator. Read more
This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
Converts the given value to a String. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.