pub struct SampleForm {Show 21 fields
pub inline: bool,
pub view: bool,
pub bytes_per_row: Option<usize>,
pub source_bytes_per_row: Option<usize>,
pub anyway: bool,
pub draft: Sample,
pub kind: RowsKind,
pub field: SampleField,
pub context: SampleContext,
pub partition_column: usize,
pub partition_values: TextInput,
pub files: TextInput,
pub range_from: TextInput,
pub range_to: TextInput,
pub time_column: usize,
pub time_from: TextInput,
pub time_before: TextInput,
pub size: TextInput,
pub seed: TextInput,
pub error: Option<String>,
pub file_offset: usize,
}Fields§
§inline: boolBefore a tool’s first run the form sits in its empty pane, and Enter is what runs it; otherwise it floats over a result, and Enter applies a change.
view: boolThe form edits the view’s sample, the step under its query: Every row is “No sample” there, which takes the sample away.
bytes_per_row: Option<usize>Bytes a row of the view takes, every column, as the table measured them: what the Size row’s estimate of a sample of the view is worked out from.
source_bytes_per_row: Option<usize>The same of a row of the source, every column it has: a sample of the source (partitions, files, a time range, the source unfiltered) reads them.
anyway: boolThe memory warning has been shown for the form as it stands: Enter again draws anyway. Any edit takes it back.
draft: Sample§kind: RowsKind§field: SampleField§context: SampleContext§partition_column: usize§partition_values: TextInput§files: TextInput§range_from: TextInput§range_to: TextInput§time_column: usize§time_from: TextInput§time_before: TextInput§size: TextInputThe sample size as typed: 100,000, 50k, 2m. Read on Enter.
seed: TextInputAny number: the same seed draws the same rows, so 0 or 1 is a sample anyone can repeat.
error: Option<String>§file_offset: usizeFirst source file shown in the numbered list under the Files row.
Implementations§
Source§impl SampleForm
impl SampleForm
pub fn new(sample: &Sample, context: SampleContext, theme: &Theme) -> Self
Sourcepub fn set_scope(&mut self, scope: &QualityScope)
pub fn set_scope(&mut self, scope: &QualityScope)
Load a scope into the form’s rows: its kind, and that kind’s inputs.
Sourcepub fn kinds(&self) -> Vec<RowsKind>
pub fn kinds(&self) -> Vec<RowsKind>
The kinds of rows this table offers, in the order ←/→ steps them.
Sourcepub fn fields(&self) -> Vec<SampleField>
pub fn fields(&self) -> Vec<SampleField>
The rows on screen, top to bottom.
pub fn input(&self, field: SampleField) -> Option<&TextInput>
pub fn input_mut(&mut self, field: SampleField) -> Option<&mut TextInput>
Sourcepub fn sync_focus(&mut self, form_focused: bool)
pub fn sync_focus(&mut self, form_focused: bool)
Show the text cursor in the focused text row only, and only while the form has the cursor at all.
Sourcepub fn adjust(&mut self, forward: bool)
pub fn adjust(&mut self, forward: bool)
←/→ on the focused row. Each ring steps both ways, so Left undoes Right.
Sourcepub fn choice(&self, field: SampleField) -> String
pub fn choice(&self, field: SampleField) -> String
The choice a ←/→ row shows, in words.
Sourcepub fn partition_values_known(&self) -> Vec<String>
pub fn partition_values_known(&self) -> Vec<String>
The values of the chosen partition column that the source’s files hold, from
their column=value path segments, in order.
Sourcepub fn rows_expected(&self) -> Option<usize>
pub fn rows_expected(&self) -> Option<usize>
Rows the sample will hold, when that can be told before it is drawn: the size, or the rows there are when fewer. Not for an equal-per-value sample, whose size is per value.
Sourcepub fn estimate(&self) -> Option<u64>
pub fn estimate(&self) -> Option<u64>
The bytes the sample will take, from the bytes per row of what it reads.
Sourcepub fn files_chosen(&self) -> Vec<usize>
pub fn files_chosen(&self) -> Vec<usize>
The file numbers typed so far, for marking the list under the Files row.
Trait Implementations§
Source§impl Form for SampleForm
impl Form for SampleForm
Source§type Field = SampleField
type Field = SampleField
Source§fn fields(&self) -> Vec<(SampleField, FieldKind)>
fn fields(&self) -> Vec<(SampleField, FieldKind)>
fn focused(&self) -> SampleField
Source§fn set_focused(&mut self, field: SampleField)
fn set_focused(&mut self, field: SampleField)
field. Called only with a field of Form::fields; a modal
that shows a text cursor in the focused field syncs it here.Source§fn text_edge(&self, _field: Self::Field) -> (bool, bool)
fn text_edge(&self, _field: Self::Field) -> (bool, bool)
Source§fn list_row(&self, _field: Self::Field) -> bool
fn list_row(&self, _field: Self::Field) -> bool
field is a row of a list (a sort, a filter, a column) rather than a
setting. A click on a list row only focuses it, so it can be picked to move or
remove without changing it; a click on it once focused acts. A setting (a
checkbox, a choice, a button) acts on the first click.Source§fn focused_kind(&self) -> Option<FieldKind>
fn focused_kind(&self) -> Option<FieldKind>
None when focus is on a field not shown.Source§fn focus(&mut self, field: Self::Field) -> bool
fn focus(&mut self, field: Self::Field) -> bool
field if the form shows it: a click on a row, or a modal moving
focus itself. Returns whether it did.Source§fn move_focus(&mut self, delta: isize)
fn move_focus(&mut self, delta: isize)
delta fields along, wrapping. A focus the form no longer shows
counts from the top.fn focus_next(&mut self)
fn focus_prev(&mut self)
Source§fn settle_focus(&mut self)
fn settle_focus(&mut self)
Auto Trait Implementations§
impl !Freeze for SampleForm
impl !RefUnwindSafe for SampleForm
impl !Sync for SampleForm
impl Send for SampleForm
impl Unpin for SampleForm
impl UnsafeUnpin for SampleForm
impl UnwindSafe for SampleForm
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> 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> ⓘ
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> ⓘ
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 moreSource§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg or
a color-specific method, such as OwoColorize::green, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg or
a color-specific method, such as OwoColorize::on_yellow, Read more