pub enum RecordedContribution {
Motion {
name: String,
doc: String,
spec: MotionSpec,
callback: u32,
},
Operator {
name: String,
doc: String,
spec: OperatorSpec,
callback: u32,
},
TextObject {
name: String,
doc: String,
spec: TextObjectSpec,
callback: u32,
},
Action {
name: String,
doc: String,
spec: ActionSpec,
callback: u32,
},
ExCommand {
name: String,
doc: String,
spec: ExCommandSpec,
parse_callback: u32,
apply_callback: u32,
},
}Expand description
One grammar contribution a plugin declared through the register-* API,
recorded verbatim (name + doc + WIT spec metadata + the guest’s callback id).
The host drains these after register-grammar returns and builds a native
*Spec with a trampoline apply/parse_args stamped SourceLayer::Plugin
(PH7.7c). The WIT spec is held as-is — its scalar fields convert at drain time
via boundary_grammar (LatencyClass/SurfaceForm) + the existing ArgSpec
mirror; the native *Spec cannot be built until the trampoline closure exists.
Variants§
Implementations§
Auto Trait Implementations§
impl Freeze for RecordedContribution
impl RefUnwindSafe for RecordedContribution
impl Send for RecordedContribution
impl Sync for RecordedContribution
impl Unpin for RecordedContribution
impl UnsafeUnpin for RecordedContribution
impl UnwindSafe for RecordedContribution
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<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