pub struct OwnershipStructure {
pub ultimate_parent: String,
pub relationships: Vec<IntercompanyRelationship>,
/* private fields */
}Expand description
Represents the complete ownership structure of a corporate group.
Fields§
§ultimate_parent: StringThe ultimate parent company code.
relationships: Vec<IntercompanyRelationship>All intercompany relationships.
Implementations§
Source§impl OwnershipStructure
impl OwnershipStructure
Sourcepub fn add_relationship(&mut self, relationship: IntercompanyRelationship)
pub fn add_relationship(&mut self, relationship: IntercompanyRelationship)
Add a relationship to the ownership structure.
Sourcepub fn get_relationships_for_parent(
&self,
parent: &str,
) -> Vec<&IntercompanyRelationship>
pub fn get_relationships_for_parent( &self, parent: &str, ) -> Vec<&IntercompanyRelationship>
Get all relationships for a specific parent company.
Sourcepub fn get_relationships_for_subsidiary(
&self,
subsidiary: &str,
) -> Vec<&IntercompanyRelationship>
pub fn get_relationships_for_subsidiary( &self, subsidiary: &str, ) -> Vec<&IntercompanyRelationship>
Get all relationships for a specific subsidiary.
Sourcepub fn get_direct_parent(&self, company: &str) -> Option<&str>
pub fn get_direct_parent(&self, company: &str) -> Option<&str>
Get the direct parent of a company.
Sourcepub fn get_direct_subsidiaries(&self, parent: &str) -> Vec<&str>
pub fn get_direct_subsidiaries(&self, parent: &str) -> Vec<&str>
Get direct subsidiaries of a company.
Sourcepub fn get_all_companies(&self) -> Vec<&str>
pub fn get_all_companies(&self) -> Vec<&str>
Get all companies in the group.
Sourcepub fn get_effective_ownership(&self, company: &str) -> Decimal
pub fn get_effective_ownership(&self, company: &str) -> Decimal
Get effective ownership percentage from ultimate parent.
Check if two companies are related (share a common parent).
Sourcepub fn get_consolidation_method(
&self,
company: &str,
) -> Option<ConsolidationMethod>
pub fn get_consolidation_method( &self, company: &str, ) -> Option<ConsolidationMethod>
Get the consolidation method for a company.
Sourcepub fn get_active_relationships(
&self,
date: NaiveDate,
) -> Vec<&IntercompanyRelationship>
pub fn get_active_relationships( &self, date: NaiveDate, ) -> Vec<&IntercompanyRelationship>
Get relationships that are active on a given date.
Sourcepub fn get_fully_consolidated_companies(&self) -> Vec<&str>
pub fn get_fully_consolidated_companies(&self) -> Vec<&str>
Get companies that require full consolidation.
Sourcepub fn get_equity_method_companies(&self) -> Vec<&str>
pub fn get_equity_method_companies(&self) -> Vec<&str>
Get companies accounted for under equity method.
Trait Implementations§
Source§impl Clone for OwnershipStructure
impl Clone for OwnershipStructure
Source§fn clone(&self) -> OwnershipStructure
fn clone(&self) -> OwnershipStructure
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 OwnershipStructure
impl Debug for OwnershipStructure
Source§impl<'de> Deserialize<'de> for OwnershipStructure
impl<'de> Deserialize<'de> for OwnershipStructure
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 OwnershipStructure
impl RefUnwindSafe for OwnershipStructure
impl Send for OwnershipStructure
impl Sync for OwnershipStructure
impl Unpin for OwnershipStructure
impl UnwindSafe for OwnershipStructure
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