fn new(
		elem: Address<M, T>,
		head: impl Into<Option<BitIdx<T::Mem>>>,
		tail: impl Into<Option<BitEnd<T::Mem>>>,
	) -> Self {
		let (head, tail) = (
			head.into().unwrap_or(BitIdx::MIN),
			tail.into().unwrap_or(BitEnd::MAX),
		);
		Self {
			elem,
			mask: O::mask(head, tail),
			head,
			tail,
			_ord: PhantomData,
			_ref: PhantomData,
		}
	}
/// Constructs a new partial-element guarded reference.
///
/// ## Parameters
///
/// - `elem`: the element to which this partially points.
/// - `head`: the index at which the partial region begins.
/// - `tail`: the index at which the partial region ends.
Constructs a new partial-element guarded reference.
Constructs a new partial - element guarded reference .
fn new(
		elem: Address<M, T>,
		head: impl Into<Option<BitIdx<T::Mem>>>,
		tail: impl Into<Option<BitEnd<T::Mem>>>,
	) -> Self {
		let (head, tail) = (
			head.into().unwrap_or(BitIdx::MIN),
			tail.into().unwrap_or(BitEnd::MAX),
		);
		Self {
			elem,
			mask: O::mask(head, tail),
			head,
			tail,
			_ord: PhantomData,
			_ref: PhantomData,
		}
	}
fn new ( elem : Address < M , T > , head : impl Into < Option < BitIdx < T :: Mem > > > , tail : impl Into < Option < BitEnd < T :: Mem > > > , ) -> Self { let ( head , tail ) = ( head . into ( ) . unwrap_or ( BitIdx :: MIN ) , tail . into ( ) . unwrap_or ( BitEnd :: MAX ) , ) ; Self { elem , mask : O :: mask ( head , tail ) , head , tail , _ord : PhantomData , _ref : PhantomData , } }
Constructs a new partial-element guarded reference.
Constructs a new partial - element guarded reference .
elem
Address<M, T>
head
impl Into<Option<BitIdx<T::Mem>>>
tail
impl Into<Option<BitEnd<T::Mem>>>
elem
Address<M, T>
the element to which this partially points.
the element to which this partially points .
head
impl Into<Option<BitIdx<T::Mem>>>
the index at which the partial region begins.
the index at which the partial region begins .
tail
impl Into<Option<BitEnd<T::Mem>>>
the index at which the partial region ends.
the index at which the partial region ends .