Struct TreeRoot

Source
pub struct TreeRoot {
    pub root: Option<Rc<RefCell<TreeNode>>>,
}
Expand description

Wrapper class to make handling empty trees easier and building of trees easier via From impls

Fields§

§root: Option<Rc<RefCell<TreeNode>>>

The root of the tree held

Trait Implementations§

Source§

impl Debug for TreeRoot

Source§

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

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

impl From<&TreeRoot> for Vec<Option<i32>>

Source§

fn from(value: &TreeRoot) -> Self

Converts to this type from the input type.
Source§

impl From<&str> for TreeRoot

Source§

fn from(value: &str) -> Self

Expects the “[]” around the values, separated by comma “,” and only integers and “null” (which is the format you’ll get on leetcode)

§Panics

This function panics if it doesn’t match the expected format

Source§

impl From<Option<Rc<RefCell<TreeNode>>>> for TreeRoot

Source§

fn from(root: Option<Rc<RefCell<TreeNode>>>) -> Self

Converts to this type from the input type.
Source§

impl From<TreeRoot> for Option<Rc<RefCell<TreeNode>>>

Source§

fn from(value: TreeRoot) -> Self

Converts to this type from the input type.
Source§

impl From<Vec<Option<i32>>> for TreeRoot

Source§

fn from(list: Vec<Option<i32>>) -> Self

Converts the incoming vec into a tree

Source§

impl From<Vec<i32>> for TreeRoot

Source§

fn from(value: Vec<i32>) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for TreeRoot

Source§

fn eq(&self, other: &TreeRoot) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for TreeRoot

Source§

impl StructuralPartialEq for TreeRoot

Auto Trait Implementations§

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, 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, U> TryFrom<U> for T
where U: Into<T>,

Source§

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>,

Source§

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.