#[non_exhaustive]pub struct Sector {
pub name: String,
pub symbol: Option<String>,
pub key: String,
pub overview: Option<SectorOverview>,
pub performance: Option<SectorPerformance>,
pub benchmark: Option<SectorPerformance>,
pub benchmark_name: Option<String>,
pub top_companies: Vec<SectorCompany>,
pub top_etfs: Vec<SectorETF>,
pub top_mutual_funds: Vec<SectorMutualFund>,
pub industries: Vec<SectorIndustry>,
pub research_reports: Vec<ResearchReport>,
}Expand description
Complete sector data with all available information
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.name: StringSector name (e.g., “Technology”)
symbol: Option<String>Yahoo Finance sector symbol (e.g., “^YH311”)
key: StringSector key for API calls (e.g., “technology”)
overview: Option<SectorOverview>Sector overview with market statistics
performance: Option<SectorPerformance>Sector performance metrics
benchmark: Option<SectorPerformance>Benchmark (S&P 500) comparison performance
benchmark_name: Option<String>Benchmark name (usually “S&P 500”)
top_companies: Vec<SectorCompany>Top companies in the sector
top_etfs: Vec<SectorETF>Top ETFs tracking this sector
top_mutual_funds: Vec<SectorMutualFund>Top mutual funds in this sector
industries: Vec<SectorIndustry>Industries within this sector
research_reports: Vec<ResearchReport>Recent research reports
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Sector
impl<'de> Deserialize<'de> for Sector
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Sector
Auto Trait Implementations§
impl Freeze for Sector
impl RefUnwindSafe for Sector
impl Send for Sector
impl Sync for Sector
impl Unpin for Sector
impl UnwindSafe for Sector
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more