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 InlineResponse20029 {
  /// Company Name - Exchange
  #[serde(rename = "companyHeader")]
  company_header: Option<String>,
  #[serde(rename = "companyName")]
  company_name: Option<String>,
  /// Contract Identifier
  #[serde(rename = "conid")]
  conid: Option<i32>,
  /// Exchange
  #[serde(rename = "description")]
  description: Option<String>,
  /// List of Future Option expirations in YYYMMDD format separated by semicolon
  #[serde(rename = "fop")]
  fop: Option<String>,
  /// List of Option expirations in YYYYMMDD format separated by semicolon
  #[serde(rename = "opt")]
  opt: Option<String>,
  #[serde(rename = "restricted")]
  restricted: Option<String>,
  #[serde(rename = "sections")]
  sections: Option<Vec<::models::IserversecdefsearchSections>>,
  /// Underlying symbol
  #[serde(rename = "symbol")]
  symbol: Option<String>,
  /// List of Warrant expirations in YYYYMMDD format separated by semicolon
  #[serde(rename = "war")]
  war: Option<String>
}

impl InlineResponse20029 {
  pub fn new() -> InlineResponse20029 {
    InlineResponse20029 {
      company_header: None,
      company_name: None,
      conid: None,
      description: None,
      fop: None,
      opt: None,
      restricted: None,
      sections: None,
      symbol: None,
      war: None
    }
  }

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

  pub fn with_company_header(mut self, company_header: String) -> InlineResponse20029 {
    self.company_header = Some(company_header);
    self
  }

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

  pub fn reset_company_header(&mut self) {
    self.company_header = None;
  }

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

  pub fn with_company_name(mut self, company_name: String) -> InlineResponse20029 {
    self.company_name = Some(company_name);
    self
  }

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

  pub fn reset_company_name(&mut self) {
    self.company_name = None;
  }

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

  pub fn with_conid(mut self, conid: i32) -> InlineResponse20029 {
    self.conid = Some(conid);
    self
  }

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

  pub fn reset_conid(&mut self) {
    self.conid = None;
  }

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

  pub fn with_description(mut self, description: String) -> InlineResponse20029 {
    self.description = Some(description);
    self
  }

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

  pub fn reset_description(&mut self) {
    self.description = None;
  }

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

  pub fn with_fop(mut self, fop: String) -> InlineResponse20029 {
    self.fop = Some(fop);
    self
  }

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

  pub fn reset_fop(&mut self) {
    self.fop = None;
  }

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

  pub fn with_opt(mut self, opt: String) -> InlineResponse20029 {
    self.opt = Some(opt);
    self
  }

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

  pub fn reset_opt(&mut self) {
    self.opt = None;
  }

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

  pub fn with_restricted(mut self, restricted: String) -> InlineResponse20029 {
    self.restricted = Some(restricted);
    self
  }

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

  pub fn reset_restricted(&mut self) {
    self.restricted = None;
  }

  pub fn set_sections(&mut self, sections: Vec<::models::IserversecdefsearchSections>) {
    self.sections = Some(sections);
  }

  pub fn with_sections(mut self, sections: Vec<::models::IserversecdefsearchSections>) -> InlineResponse20029 {
    self.sections = Some(sections);
    self
  }

  pub fn sections(&self) -> Option<&Vec<::models::IserversecdefsearchSections>> {
    self.sections.as_ref()
  }

  pub fn reset_sections(&mut self) {
    self.sections = None;
  }

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

  pub fn with_symbol(mut self, symbol: String) -> InlineResponse20029 {
    self.symbol = Some(symbol);
    self
  }

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

  pub fn reset_symbol(&mut self) {
    self.symbol = None;
  }

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

  pub fn with_war(mut self, war: String) -> InlineResponse20029 {
    self.war = Some(war);
    self
  }

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

  pub fn reset_war(&mut self) {
    self.war = None;
  }

}