pub fn uncover(self_ptr: *mut Self) {
        let mut column = unsafe { ptr::read(self_ptr) };
        assert!(column.is_covered);

        let base_ptr = self_ptr.cast::<BaseNode>();

        base_node::iter::up_mut(base_ptr, Some(base_ptr))
            .for_each(|base_ptr| Node::uncover_row(base_ptr.cast()));

        BaseNode::uncover_horizontal(base_ptr);

        column.is_covered = false;
        unsafe {
            ptr::write(self_ptr, column);
        }
    }
/// Uncover entire column, and any rows that appear in this column.
Uncover entire column, and any rows that appear in this column.
Uncover entire column and any rows that appear in this column .
pub fn uncover(self_ptr: *mut Self) {
        let mut column = unsafe { ptr::read(self_ptr) };
        assert!(column.is_covered);
        let base_ptr = self_ptr.cast::<BaseNode>();
        base_node::iter::up_mut(base_ptr, Some(base_ptr))
            .for_each(|base_ptr| Node::uncover_row(base_ptr.cast()));
        BaseNode::uncover_horizontal(base_ptr);
        column.is_covered = false;
        unsafe {
            ptr::write(self_ptr, column);
        }
    }
pub fn uncover ( self_ptr : * mut Self ) { let mut column = unsafe { ptr :: read ( self_ptr ) } ; assert ! ( column is_covered ) ; let base_ptr = self_ptr . cast :: < BaseNode > ( ) ; base_node :: iter :: up_mut ( base_ptr , Some ( base_ptr ) ) . for_each ( | base_ptr | Node :: uncover_row ( base_ptr . cast ( ) ) ) ; BaseNode :: uncover_horizontal ( base_ptr ) ; column . is_covered = false ; unsafe { ptr :: write ( self_ptr , column ) ; } }
Uncover entire column, and any rows that appear in this column.
Uncover entire column and any rows that appear in this column .
self_ptr
*mut Self
self_ptr
*mut Self