#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Stock {
#[prost(uint64, tag="1")]
pub id: u64,
#[prost(string, tag="2")]
pub symbol: ::prost::alloc::string::String,
#[prost(string, tag="3")]
pub code: ::prost::alloc::string::String,
#[prost(string, tag="4")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag="5")]
pub prev_close: ::prost::alloc::string::String,
#[prost(string, tag="6")]
pub last_price: ::prost::alloc::string::String,
#[prost(enumeration="MarketType", tag="7")]
pub market_type: i32,
#[prost(int64, tag="8")]
pub listed_shares: i64,
#[prost(int64, tag="9")]
pub tick_size: i64,
#[prost(bool, tag="10")]
pub tradable: bool,
#[prost(bool, tag="11")]
pub short_sellable: bool,
#[prost(bool, tag="12")]
pub margin_tradable: bool,
#[prost(string, tag="13")]
pub sector_code: ::prost::alloc::string::String,
#[prost(string, tag="14")]
pub sector_name: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GetStockRequest {
#[prost(string, tag="1")]
pub stock: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListStocksRequest {
#[prost(uint32, optional, tag="1")]
pub page_size: ::core::option::Option<u32>,
#[prost(string, optional, tag="2")]
pub page_token: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, tag="3")]
pub filter: ::prost::alloc::string::String,
}
#[allow(clippy::derive_partial_eq_without_eq)]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ListStocksResponse {
#[prost(message, repeated, tag="1")]
pub stocks: ::prost::alloc::vec::Vec<Stock>,
#[prost(string, tag="2")]
pub next_page_token: ::prost::alloc::string::String,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum MarketType {
Unspecified = 0,
Kospi = 1,
Kosdaq = 2,
Konex = 3,
}
impl MarketType {
pub fn as_str_name(&self) -> &'static str {
match self {
MarketType::Unspecified => "MARKET_TYPE_UNSPECIFIED",
MarketType::Kospi => "MARKET_TYPE_KOSPI",
MarketType::Kosdaq => "MARKET_TYPE_KOSDAQ",
MarketType::Konex => "MARKET_TYPE_KONEX",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"MARKET_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
"MARKET_TYPE_KOSPI" => Some(Self::Kospi),
"MARKET_TYPE_KOSDAQ" => Some(Self::Kosdaq),
"MARKET_TYPE_KONEX" => Some(Self::Konex),
_ => None,
}
}
}
include!("master_sync.v1.stock.tonic.rs");
include!("master_sync.v1.stock.serde.rs");