#[non_exhaustive]pub struct KeyUsage {
pub base_key_usage: Option<KeyUsageOptions>,
pub extended_key_usage: Option<ExtendedKeyUsageOptions>,
pub unknown_extended_key_usages: Vec<ObjectId>,
/* private fields */
}Expand description
A KeyUsage describes key usage values that may appear in an X.509 certificate.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.base_key_usage: Option<KeyUsageOptions>Describes high-level ways in which a key may be used.
extended_key_usage: Option<ExtendedKeyUsageOptions>Detailed scenarios in which a key may be used.
unknown_extended_key_usages: Vec<ObjectId>Used to describe extended key usages that are not listed in the KeyUsage.ExtendedKeyUsageOptions message.
Implementations§
Source§impl KeyUsage
impl KeyUsage
pub fn new() -> Self
Sourcepub fn set_base_key_usage<T>(self, v: T) -> Selfwhere
T: Into<KeyUsageOptions>,
pub fn set_base_key_usage<T>(self, v: T) -> Selfwhere
T: Into<KeyUsageOptions>,
Sets the value of base_key_usage.
§Example
ⓘ
use google_cloud_security_privateca_v1::model::key_usage::KeyUsageOptions;
let x = KeyUsage::new().set_base_key_usage(KeyUsageOptions::default()/* use setters */);Sourcepub fn set_or_clear_base_key_usage<T>(self, v: Option<T>) -> Selfwhere
T: Into<KeyUsageOptions>,
pub fn set_or_clear_base_key_usage<T>(self, v: Option<T>) -> Selfwhere
T: Into<KeyUsageOptions>,
Sets or clears the value of base_key_usage.
§Example
ⓘ
use google_cloud_security_privateca_v1::model::key_usage::KeyUsageOptions;
let x = KeyUsage::new().set_or_clear_base_key_usage(Some(KeyUsageOptions::default()/* use setters */));
let x = KeyUsage::new().set_or_clear_base_key_usage(None::<KeyUsageOptions>);Sourcepub fn set_extended_key_usage<T>(self, v: T) -> Selfwhere
T: Into<ExtendedKeyUsageOptions>,
pub fn set_extended_key_usage<T>(self, v: T) -> Selfwhere
T: Into<ExtendedKeyUsageOptions>,
Sets the value of extended_key_usage.
§Example
ⓘ
use google_cloud_security_privateca_v1::model::key_usage::ExtendedKeyUsageOptions;
let x = KeyUsage::new().set_extended_key_usage(ExtendedKeyUsageOptions::default()/* use setters */);Sourcepub fn set_or_clear_extended_key_usage<T>(self, v: Option<T>) -> Selfwhere
T: Into<ExtendedKeyUsageOptions>,
pub fn set_or_clear_extended_key_usage<T>(self, v: Option<T>) -> Selfwhere
T: Into<ExtendedKeyUsageOptions>,
Sets or clears the value of extended_key_usage.
§Example
ⓘ
use google_cloud_security_privateca_v1::model::key_usage::ExtendedKeyUsageOptions;
let x = KeyUsage::new().set_or_clear_extended_key_usage(Some(ExtendedKeyUsageOptions::default()/* use setters */));
let x = KeyUsage::new().set_or_clear_extended_key_usage(None::<ExtendedKeyUsageOptions>);Sourcepub fn set_unknown_extended_key_usages<T, V>(self, v: T) -> Self
pub fn set_unknown_extended_key_usages<T, V>(self, v: T) -> Self
Sets the value of unknown_extended_key_usages.
§Example
ⓘ
use google_cloud_security_privateca_v1::model::ObjectId;
let x = KeyUsage::new()
.set_unknown_extended_key_usages([
ObjectId::default()/* use setters */,
ObjectId::default()/* use (different) setters */,
]);Trait Implementations§
impl StructuralPartialEq for KeyUsage
Auto Trait Implementations§
impl Freeze for KeyUsage
impl RefUnwindSafe for KeyUsage
impl Send for KeyUsage
impl Sync for KeyUsage
impl Unpin for KeyUsage
impl UnwindSafe for KeyUsage
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