pub struct DocumentFolds(pub Vec<Fold>);Expand description
Per-document fold list. Empty means “not yet computed for this buffer.” First-activation seeds from the active foldmethod; subsequent re-activations restore the user’s open / closed state. Universal across language majors – the foundational text-mode owns the data shape; per-language fold queries are a presentation-layer concern read through the syntax local.
Tuple Fields§
§0: Vec<Fold>Trait Implementations§
Source§impl BufferLocal for DocumentFolds
impl BufferLocal for DocumentFolds
Source§const NAME: &'static str = "text-mode.folds"
const NAME: &'static str = "text-mode.folds"
Public display name (
:describe-buffer row label,
debug logs). Convention: <owner-mode-name>.<key>,
e.g. "file-tree.entries". Not a registry key — locals
aren’t registered globally; the name is metadata for
inspection.Source§const DOC: &'static str = "Per-document fold list. Empty until the activation hook \
seeds from the buffer's foldmethod; thereafter holds the \
user's open / closed state across buffer-switch \
round-trips."
const DOC: &'static str = "Per-document fold list. Empty until the activation hook \ seeds from the buffer's foldmethod; thereafter holds the \ user's open / closed state across buffer-switch \ round-trips."
Doc string. Shown in
:describe-buffer when the user
expands a local for detail.Source§const OWNER_MODE: &'static str = "text-mode"
const OWNER_MODE: &'static str = "text-mode"
Mode id that owns this local. Attribution metadata for
:describe-buffer; the write-time check the design calls for
(a ModeContext::set_local::<T> that rejects a non-owner) is not
implemented, so nothing enforces it today (see the module docs).Source§impl Clone for DocumentFolds
impl Clone for DocumentFolds
Source§fn clone(&self) -> DocumentFolds
fn clone(&self) -> DocumentFolds
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DocumentFolds
impl Debug for DocumentFolds
Source§impl Default for DocumentFolds
impl Default for DocumentFolds
Source§fn default() -> DocumentFolds
fn default() -> DocumentFolds
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for DocumentFolds
impl RefUnwindSafe for DocumentFolds
impl Send for DocumentFolds
impl Sync for DocumentFolds
impl Unpin for DocumentFolds
impl UnsafeUnpin for DocumentFolds
impl UnwindSafe for DocumentFolds
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
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§impl<T> IntoMaybeUndefined<T> for T
impl<T> IntoMaybeUndefined<T> for T
§fn into_maybe_undefined(self) -> MaybeUndefined<T>
fn into_maybe_undefined(self) -> MaybeUndefined<T>
Converts this value into a three-state builder argument.
§impl<T> IntoOption<T> for T
impl<T> IntoOption<T> for T
§fn into_option(self) -> Option<T>
fn into_option(self) -> Option<T>
Converts this value into an optional builder argument.