[][src]Struct google_cloudbilling1::PricingExpression

pub struct PricingExpression {
    pub base_unit_conversion_factor: Option<f64>,
    pub display_quantity: Option<f64>,
    pub base_unit: Option<String>,
    pub usage_unit_description: Option<String>,
    pub base_unit_description: Option<String>,
    pub usage_unit: Option<String>,
    pub tiered_rates: Option<Vec<TierRate>>,
}

Expresses a mathematical pricing formula. For Example:-

usage_unit: GBy tiered_rates: [start_usage_amount: 20, unit_price: $10] [start_usage_amount: 100, unit_price: $5]

The above expresses a pricing formula where the first 20GB is free, the next 80GB is priced at $10 per GB followed by $5 per GB for additional usage.

This type is not used in any activity, and only used as part of another schema.

Fields

base_unit_conversion_factor: Option<f64>

Conversion factor for converting from price per usage_unit to price per base_unit, and start_usage_amount to start_usage_amount in base_unit. unit_price / base_unit_conversion_factor = price per base_unit. start_usage_amount * base_unit_conversion_factor = start_usage_amount in base_unit.

display_quantity: Option<f64>

The recommended quantity of units for displaying pricing info. When displaying pricing info it is recommended to display: (unit_price * display_quantity) per display_quantity usage_unit. This field does not affect the pricing formula and is for display purposes only. Example: If the unit_price is "0.0001 USD", the usage_unit is "GB" and the display_quantity is "1000" then the recommended way of displaying the pricing info is "0.10 USD per 1000 GB"

base_unit: Option<String>

The base unit for the SKU which is the unit used in usage exports. Example: "By"

usage_unit_description: Option<String>

The unit of usage in human readable form. Example: "gibi byte".

base_unit_description: Option<String>

The base unit in human readable form. Example: "byte".

usage_unit: Option<String>

The short hand for unit of usage this pricing is specified in. Example: usage_unit of "GiBy" means that usage is specified in "Gibi Byte".

tiered_rates: Option<Vec<TierRate>>

The list of tiered rates for this pricing. The total cost is computed by applying each of the tiered rates on usage. This repeated list is sorted by ascending order of start_usage_amount.

Trait Implementations

impl Part for PricingExpression[src]

impl Default for PricingExpression[src]

impl Clone for PricingExpression[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for PricingExpression[src]

impl Serialize for PricingExpression[src]

impl<'de> Deserialize<'de> for PricingExpression[src]

Auto Trait Implementations

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Typeable for T where
    T: Any

fn get_type(&self) -> TypeId

Get the TypeId of this object.

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]