ib 3.0.0

A Rust client to the Interactive Brokers HTTP REST API
Documentation
/* 
 * Client Portal Web API
 *
 * Client Poral Web API
 *
 * OpenAPI spec version: 1.0.0
 * 
 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 */


#[allow(unused_imports)]
use serde_json::Value;

#[derive(Debug, Serialize, Deserialize)]
pub struct Performance {
  #[serde(rename = "cps")]
  cps: Option<::models::PerformanceCps>,
  #[serde(rename = "currencyType")]
  currency_type: Option<String>,
  #[serde(rename = "id")]
  id: Option<String>,
  #[serde(rename = "included")]
  included: Option<Vec<String>>,
  #[serde(rename = "nav")]
  nav: Option<::models::PerformanceNav>,
  #[serde(rename = "pm")]
  pm: Option<String>,
  #[serde(rename = "rc")]
  rc: Option<i32>,
  #[serde(rename = "tpps")]
  tpps: Option<::models::PerformanceTpps>
}

impl Performance {
  pub fn new() -> Performance {
    Performance {
      cps: None,
      currency_type: None,
      id: None,
      included: None,
      nav: None,
      pm: None,
      rc: None,
      tpps: None
    }
  }

  pub fn set_cps(&mut self, cps: ::models::PerformanceCps) {
    self.cps = Some(cps);
  }

  pub fn with_cps(mut self, cps: ::models::PerformanceCps) -> Performance {
    self.cps = Some(cps);
    self
  }

  pub fn cps(&self) -> Option<&::models::PerformanceCps> {
    self.cps.as_ref()
  }

  pub fn reset_cps(&mut self) {
    self.cps = None;
  }

  pub fn set_currency_type(&mut self, currency_type: String) {
    self.currency_type = Some(currency_type);
  }

  pub fn with_currency_type(mut self, currency_type: String) -> Performance {
    self.currency_type = Some(currency_type);
    self
  }

  pub fn currency_type(&self) -> Option<&String> {
    self.currency_type.as_ref()
  }

  pub fn reset_currency_type(&mut self) {
    self.currency_type = None;
  }

  pub fn set_id(&mut self, id: String) {
    self.id = Some(id);
  }

  pub fn with_id(mut self, id: String) -> Performance {
    self.id = Some(id);
    self
  }

  pub fn id(&self) -> Option<&String> {
    self.id.as_ref()
  }

  pub fn reset_id(&mut self) {
    self.id = None;
  }

  pub fn set_included(&mut self, included: Vec<String>) {
    self.included = Some(included);
  }

  pub fn with_included(mut self, included: Vec<String>) -> Performance {
    self.included = Some(included);
    self
  }

  pub fn included(&self) -> Option<&Vec<String>> {
    self.included.as_ref()
  }

  pub fn reset_included(&mut self) {
    self.included = None;
  }

  pub fn set_nav(&mut self, nav: ::models::PerformanceNav) {
    self.nav = Some(nav);
  }

  pub fn with_nav(mut self, nav: ::models::PerformanceNav) -> Performance {
    self.nav = Some(nav);
    self
  }

  pub fn nav(&self) -> Option<&::models::PerformanceNav> {
    self.nav.as_ref()
  }

  pub fn reset_nav(&mut self) {
    self.nav = None;
  }

  pub fn set_pm(&mut self, pm: String) {
    self.pm = Some(pm);
  }

  pub fn with_pm(mut self, pm: String) -> Performance {
    self.pm = Some(pm);
    self
  }

  pub fn pm(&self) -> Option<&String> {
    self.pm.as_ref()
  }

  pub fn reset_pm(&mut self) {
    self.pm = None;
  }

  pub fn set_rc(&mut self, rc: i32) {
    self.rc = Some(rc);
  }

  pub fn with_rc(mut self, rc: i32) -> Performance {
    self.rc = Some(rc);
    self
  }

  pub fn rc(&self) -> Option<&i32> {
    self.rc.as_ref()
  }

  pub fn reset_rc(&mut self) {
    self.rc = None;
  }

  pub fn set_tpps(&mut self, tpps: ::models::PerformanceTpps) {
    self.tpps = Some(tpps);
  }

  pub fn with_tpps(mut self, tpps: ::models::PerformanceTpps) -> Performance {
    self.tpps = Some(tpps);
    self
  }

  pub fn tpps(&self) -> Option<&::models::PerformanceTpps> {
    self.tpps.as_ref()
  }

  pub fn reset_tpps(&mut self) {
    self.tpps = None;
  }

}