pub fn root(&self) -> Root {
        match self.cached_root.get() {
            // Return cached root.
            Some(root) => root,
            None => {
                // Compute root and cache it.
                let root = Root(self.inner.root().0);
                self.cached_root.replace(Some(root));
                root
            }
        }
    }
/// Returns the current root of the tree; used as an anchor in Sprout
/// shielded transactions.
Returns the current root of the tree; used as an anchor in Sprout
shielded transactions.
Returns the current root of the tree ; used as an anchor in Sprout shielded transactions .
pub fn root(&self) -> Root {
        match self.cached_root.get() {
            // Return cached root.
            Some(root) => root,
            None => {
                // Compute root and cache it.
                let root = Root(self.inner.root().0);
                self.cached_root.replace(Some(root));
                root
            }
        }
    }
pub fn root ( & self ) -> Root { match self . cached_root . get ( ) { // Return cached root. Some ( root ) => root , None => { // Compute root and cache it. let root = Root ( self . inner . root ( ) . 0 ) ; self . cached_root . replace ( Some ( root ) ) ; root } } }
Returns the current root of the tree; used as an anchor in Sprout
shielded transactions.
Returns the current root of the tree ; used as an anchor in Sprout shielded transactions .
&self