#[non_exhaustive]pub struct FactConcept {
pub label: Option<String>,
pub description: Option<String>,
pub units: HashMap<String, Vec<FactUnit>>,
}Expand description
A single XBRL concept (e.g., “Revenue”) with all reported values.
Values are organized by unit of measure (e.g., “USD”, “shares”, “pure”).
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.label: Option<String>Human-readable label
description: Option<String>Description of this concept
units: HashMap<String, Vec<FactUnit>>Values organized by unit type (e.g., “USD” -> vec of data points)
Implementations§
Source§impl FactConcept
impl FactConcept
Sourcepub fn to_dataframe_for_unit(
&self,
unit: &str,
) -> PolarsResult<Option<DataFrame>>
pub fn to_dataframe_for_unit( &self, unit: &str, ) -> PolarsResult<Option<DataFrame>>
Convert all data points from a specific unit to a polars DataFrame.
§Arguments
unit- The unit of measure (e.g., “USD”, “shares”, “pure”)
§Example
if let Some(revenue) = facts.get_us_gaap_fact("Revenue") {
// Convert USD revenue data to DataFrame
if let Some(df) = revenue.to_dataframe_for_unit("USD")? {
println!("Revenue in USD: {:?}", df);
}
}Sourcepub fn to_dataframe(&self) -> PolarsResult<DataFrame>
pub fn to_dataframe(&self) -> PolarsResult<DataFrame>
Convert all data points from all units to a single polars DataFrame.
Adds a “unit” column to distinguish between different units of measure.
§Example
if let Some(revenue) = facts.get_us_gaap_fact("Revenue") {
let df = revenue.to_dataframe()?;
println!("All revenue data: {:?}", df);
}Trait Implementations§
Source§impl Clone for FactConcept
impl Clone for FactConcept
Source§fn clone(&self) -> FactConcept
fn clone(&self) -> FactConcept
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for FactConcept
impl Debug for FactConcept
Source§impl<'de> Deserialize<'de> for FactConcept
impl<'de> Deserialize<'de> for FactConcept
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
Auto Trait Implementations§
impl Freeze for FactConcept
impl RefUnwindSafe for FactConcept
impl Send for FactConcept
impl Sync for FactConcept
impl Unpin for FactConcept
impl UnsafeUnpin for FactConcept
impl UnwindSafe for FactConcept
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