#[non_exhaustive]pub struct SubnetworkSecondaryRange {
pub ip_cidr_range: Option<String>,
pub ip_collection: Option<String>,
pub ip_version: Option<IpVersion>,
pub range_name: Option<String>,
pub reserved_internal_range: Option<String>,
/* private fields */
}subnetworks only.Expand description
Represents a secondary IP range of a subnetwork.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.ip_cidr_range: Option<String>The range of IP addresses belonging to this subnetwork secondary range. Provide this property when you create the subnetwork. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network. Both IPv4 and IPv6 ranges are supported. For IPv4, the range can be any range listed in theValid ranges list.
For IPv6:
The range must have a /64 prefix length.
The range must be omitted, for auto-allocation from Google-defined ULA
IPv6 range.
For BYOGUA internal IPv6 secondary range, the range may be specified
along with the ipCollection field.
If an ipCollection is specified, the requested ip_cidr_range must lie
within the range of the PDP referenced by the ipCollection field for
allocation.
If ipCollection field is specified, but ip_cidr_range is not,
the range is auto-allocated from the PDP referenced by the ipCollection
field.
ip_collection: Option<String>Reference to a Public Delegated Prefix (PDP) for BYOIP.
This field should be specified for configuring BYOGUA internal IPv6
secondary range.
When specified along with the ip_cidr_range, the ip_cidr_range must lie
within the PDP referenced by the ipCollection field.
When specified without the ip_cidr_range, the range is auto-allocated
from the PDP referenced by the ipCollection field.
ip_version: Option<IpVersion>§range_name: Option<String>The name associated with this subnetwork secondary range, used when adding an alias IP/IPv6 range to a VM instance. The name must be 1-63 characters long, and comply withRFC1035. The name must be unique within the subnetwork.
reserved_internal_range: Option<String>The URL of the reserved internal range. Only IPv4 is supported.
Implementations§
Source§impl SubnetworkSecondaryRange
impl SubnetworkSecondaryRange
Sourcepub fn set_ip_cidr_range<T>(self, v: T) -> Self
pub fn set_ip_cidr_range<T>(self, v: T) -> Self
Sets the value of ip_cidr_range.
§Example
let x = SubnetworkSecondaryRange::new().set_ip_cidr_range("example");Sourcepub fn set_or_clear_ip_cidr_range<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_ip_cidr_range<T>(self, v: Option<T>) -> Self
Sets or clears the value of ip_cidr_range.
§Example
let x = SubnetworkSecondaryRange::new().set_or_clear_ip_cidr_range(Some("example"));
let x = SubnetworkSecondaryRange::new().set_or_clear_ip_cidr_range(None::<String>);Sourcepub fn set_ip_collection<T>(self, v: T) -> Self
pub fn set_ip_collection<T>(self, v: T) -> Self
Sets the value of ip_collection.
§Example
let x = SubnetworkSecondaryRange::new().set_ip_collection("example");Sourcepub fn set_or_clear_ip_collection<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_ip_collection<T>(self, v: Option<T>) -> Self
Sets or clears the value of ip_collection.
§Example
let x = SubnetworkSecondaryRange::new().set_or_clear_ip_collection(Some("example"));
let x = SubnetworkSecondaryRange::new().set_or_clear_ip_collection(None::<String>);Sourcepub fn set_ip_version<T>(self, v: T) -> Self
pub fn set_ip_version<T>(self, v: T) -> Self
Sets the value of ip_version.
§Example
use google_cloud_compute_v1::model::subnetwork_secondary_range::IpVersion;
let x0 = SubnetworkSecondaryRange::new().set_ip_version(IpVersion::Ipv6);
let x1 = SubnetworkSecondaryRange::new().set_ip_version(IpVersion::Unspecified);Sourcepub fn set_or_clear_ip_version<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_ip_version<T>(self, v: Option<T>) -> Self
Sets or clears the value of ip_version.
§Example
use google_cloud_compute_v1::model::subnetwork_secondary_range::IpVersion;
let x0 = SubnetworkSecondaryRange::new().set_or_clear_ip_version(Some(IpVersion::Ipv6));
let x1 = SubnetworkSecondaryRange::new().set_or_clear_ip_version(Some(IpVersion::Unspecified));
let x_none = SubnetworkSecondaryRange::new().set_or_clear_ip_version(None::<IpVersion>);Sourcepub fn set_range_name<T>(self, v: T) -> Self
pub fn set_range_name<T>(self, v: T) -> Self
Sets the value of range_name.
§Example
let x = SubnetworkSecondaryRange::new().set_range_name("example");Sourcepub fn set_or_clear_range_name<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_range_name<T>(self, v: Option<T>) -> Self
Sets or clears the value of range_name.
§Example
let x = SubnetworkSecondaryRange::new().set_or_clear_range_name(Some("example"));
let x = SubnetworkSecondaryRange::new().set_or_clear_range_name(None::<String>);Sourcepub fn set_reserved_internal_range<T>(self, v: T) -> Self
pub fn set_reserved_internal_range<T>(self, v: T) -> Self
Sets the value of reserved_internal_range.
§Example
let x = SubnetworkSecondaryRange::new().set_reserved_internal_range("example");Sourcepub fn set_or_clear_reserved_internal_range<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_reserved_internal_range<T>(self, v: Option<T>) -> Self
Sets or clears the value of reserved_internal_range.
§Example
let x = SubnetworkSecondaryRange::new().set_or_clear_reserved_internal_range(Some("example"));
let x = SubnetworkSecondaryRange::new().set_or_clear_reserved_internal_range(None::<String>);Trait Implementations§
Source§impl Clone for SubnetworkSecondaryRange
impl Clone for SubnetworkSecondaryRange
Source§fn clone(&self) -> SubnetworkSecondaryRange
fn clone(&self) -> SubnetworkSecondaryRange
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SubnetworkSecondaryRange
impl Debug for SubnetworkSecondaryRange
Source§impl Default for SubnetworkSecondaryRange
impl Default for SubnetworkSecondaryRange
Source§fn default() -> SubnetworkSecondaryRange
fn default() -> SubnetworkSecondaryRange
Source§impl Message for SubnetworkSecondaryRange
impl Message for SubnetworkSecondaryRange
Source§impl PartialEq for SubnetworkSecondaryRange
impl PartialEq for SubnetworkSecondaryRange
impl StructuralPartialEq for SubnetworkSecondaryRange
Auto Trait Implementations§
impl Freeze for SubnetworkSecondaryRange
impl RefUnwindSafe for SubnetworkSecondaryRange
impl Send for SubnetworkSecondaryRange
impl Sync for SubnetworkSecondaryRange
impl Unpin for SubnetworkSecondaryRange
impl UnsafeUnpin for SubnetworkSecondaryRange
impl UnwindSafe for SubnetworkSecondaryRange
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<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request