struct RowStart {
session_id: Option<String>,
is_git_repo: Option<bool>,
cwd: Option<String>,
}Expand description
What WorkerRowIndex reads out of a row’s body. Deserialising into
this rather than SessionRecord is the point: serde skips what it is
not asked for, so the charter - kilobytes on a project’s lead row - is
never allocated. The identity is not here because it is not in the
body: the key carries it, and this reader takes it from there.
A body that is not a record at all fails here exactly as it fails
SessionRecord, so the two readers agree on every row a running
forge writes. They part company only for a body whose identity fields
are the wrong type, which this reader no longer parses: a corrupted
store rather than a shape forge produces.
Fields§
§session_id: Option<String>§is_git_repo: Option<bool>§cwd: Option<String>Trait Implementations§
Source§impl<'de> Deserialize<'de> for RowStart
impl<'de> Deserialize<'de> for RowStart
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for RowStart
impl RefUnwindSafe for RowStart
impl Send for RowStart
impl Sync for RowStart
impl Unpin for RowStart
impl UnsafeUnpin for RowStart
impl UnwindSafe for RowStart
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§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