#[non_exhaustive]pub enum Purpose {
DnsResolver,
GceEndpoint,
IpsecInterconnect,
NatAuto,
PrivateServiceConnect,
Serverless,
SharedLoadbalancerVip,
VpcPeering,
UnknownValue(UnknownValue),
}addresses or global-addresses only.Expand description
The enumerated type for the purpose field.
§Working with unknown values
This enum is defined as #[non_exhaustive] because Google Cloud may add
additional enum variants at any time. Adding new variants is not considered
a breaking change. Applications should write their code in anticipation of:
- New values appearing in future releases of the client library, and
- New values received dynamically, without application changes.
Please consult the Working with enums section in the user guide for some guidelines.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
DnsResolver
DNS resolver address in the subnetwork.
GceEndpoint
VM internal/alias IP, Internal LB service IP, etc.
IpsecInterconnect
A regional internal IP address range reserved for the VLAN attachment that is used in HA VPN over Cloud Interconnect. This regional internal IP address range must not overlap with any IP address range of subnet/route in the VPC network and its peering networks. After the VLAN attachment is created with the reserved IP address range, when creating a new VPN gateway, its interface IP address is allocated from the associated VLAN attachment’s IP address range.
NatAuto
External IP automatically reserved for Cloud NAT.
PrivateServiceConnect
A private network IP address that can be used to configure Private Service Connect. This purpose can be specified only forGLOBAL addresses of Type INTERNAL
Serverless
A regional internal IP address range reserved for Serverless.
A private network IP address that can be shared by multiple Internal Load Balancer forwarding rules.
VpcPeering
IP range for peer networks.
UnknownValue(UnknownValue)
If set, the enum was initialized with an unknown value.
Applications can examine the value using Purpose::value or Purpose::name.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Purpose
impl<'de> Deserialize<'de> for Purpose
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 StructuralPartialEq for Purpose
Auto Trait Implementations§
impl Freeze for Purpose
impl RefUnwindSafe for Purpose
impl Send for Purpose
impl Sync for Purpose
impl Unpin for Purpose
impl UnwindSafe for Purpose
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.