Struct classeq_core::domain::dtos::tree::Tree

source ·
pub struct Tree {
    pub id: Uuid,
    pub name: String,
    pub min_branch_support: f64,
    pub root: Clade,
    pub annotations: Option<Vec<Annotation>>,
    pub kmers_map: Option<KmersMap>,
    /* private fields */
}

Fields§

§id: Uuid

The unique identifier for the tree.

The id is a unique identifier for the tree. The id is a Universally Unique Identifier (UUID) that is generated when the tree is created.

§name: String

The human-readable name for the tree.

When the tree is created using the from_file function, the name is set from the file name where the tree is parsed from.

§min_branch_support: f64

The minimum branch support value.

The minimum branch support value is the minimum support value for a branch to be included in the tree. Branches with support values below this value are removed from the tree and children are reconnected to the parent node.

§root: Clade

The root Clade of the tree.

The root is the root Clade of the tree. The root Clade is the starting point of the tree and contains the children nodes.

§annotations: Option<Vec<Annotation>>

The annotations associated with the tree.

The annotations are the taxonomic annotations associated with nodes in the tree. The annotations are stored as a vector of Annotation objects.

§kmers_map: Option<KmersMap>

Implementations§

source§

impl Tree

source

pub fn new(id: Uuid, name: String, min_branch_support: f64, root: Clade) -> Tree

Create a new Tree object.

The function creates a new Tree object with an id, name, and root Clade. The id is a unique identifier for the tree. The name is a human-readable name for the tree. The root is the root Clade of the tree.

source

pub fn get_in_memory_size(&self) -> Option<String>

source

pub fn update_in_memory_size(&mut self)

source

pub fn pretty_print(&self)

Pretty print the tree.

The function prints the tree in a human-readable format. The function prints the root node and recursively prints each child node.

source

pub fn from_yaml_file(file_path: &Path) -> Result<Tree, MappedErrors>

source

pub fn init_from_file( tree_path: &Path, min_branch_support: f64, ) -> Result<Tree, MappedErrors>

Create a new Tree from a .newick file.

The phylotre::tree::Tree is parsed from the file and converted to a Tree object with a root Clade.

Trait Implementations§

source§

impl Debug for Tree

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for Tree

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for Tree

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

§

impl Freeze for Tree

§

impl RefUnwindSafe for Tree

§

impl Send for Tree

§

impl Sync for Tree

§

impl Unpin for Tree

§

impl UnwindSafe for Tree

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoEither for T

source§

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 more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
source§

impl<T> Pointable for T

source§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,