amazon-spapi 2.0.3

A Rust client library for Amazon Selling Partner API (SP-API)
Documentation
/*
 * Amazon Shipping API
 *
 * The Amazon Shipping API is designed to support outbound shipping use cases both for orders originating on Amazon-owned marketplaces as well as external channels/marketplaces. With these APIs, you can request shipping rates, create shipments, cancel shipments, and track shipments.
 *
 * The version of the OpenAPI document: v2
 * Contact: swa-api-core@amazon.com
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

/// Dimensions : A set of measurements for a three-dimensional object.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Dimensions {
    /// The length of the package.
    #[serde(rename = "length")]
    pub length: f64,
    /// The width of the package.
    #[serde(rename = "width")]
    pub width: f64,
    /// The height of the package.
    #[serde(rename = "height")]
    pub height: f64,
    /// The unit of measurement.
    #[serde(rename = "unit")]
    pub unit: Unit,
}

impl Dimensions {
    /// A set of measurements for a three-dimensional object.
    pub fn new(length: f64, width: f64, height: f64, unit: Unit) -> Dimensions {
        Dimensions {
            length,
            width,
            height,
            unit,
        }
    }
}
/// The unit of measurement.
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Unit {
    #[serde(rename = "INCH")]
    Inch,
    #[serde(rename = "CENTIMETER")]
    Centimeter,
}

impl Default for Unit {
    fn default() -> Unit {
        Self::Inch
    }
}