Skip to main content

TextOp

Enum TextOp 

Source
pub enum TextOp {
    Search {
        collection: QualifiedCollection,
        field: Option<String>,
        query: String,
        top_k: usize,
        mode: QueryMode,
        fuzzy: bool,
        prefilter: Option<SurrogateBitmap>,
        filters: Vec<u8>,
        rls_filters: Vec<u8>,
        scores: Vec<TextScoreSpec>,
    },
    BM25ScoreScan {
        collection: QualifiedCollection,
        filters: Vec<u8>,
        rls_filters: Vec<u8>,
        scores: Vec<TextScoreSpec>,
        bound: Option<ScoreScanBound>,
    },
    PhraseSearch {
        collection: QualifiedCollection,
        field: Option<String>,
        terms: Vec<String>,
        top_k: usize,
        prefilter: Option<SurrogateBitmap>,
        filters: Vec<u8>,
        rls_filters: Vec<u8>,
        scores: Vec<TextScoreSpec>,
    },
    HybridSearch {
Show 14 fields collection: QualifiedCollection, vector_field: String, query_vector: Vec<f32>, text_field: Option<String>, query_text: String, filters: Vec<u8>, top_k: usize, ef_search: usize, mode: QueryMode, fuzzy: bool, vector_weight: f32, filter_bitmap: Option<SurrogateBitmap>, rls_filters: Vec<u8>, score_alias: Option<String>,
}, FtsIndexDoc { collection: QualifiedCollection, surrogate: Surrogate, fields: Vec<(String, String)>, provenance: Option<SyncProvenance>, }, FtsDeleteDoc { collection: QualifiedCollection, surrogate: Option<Surrogate>, provenance: Option<SyncProvenance>, }, HybridSearchTriple {
Show 17 fields collection: QualifiedCollection, vector_field: String, query_vector: Vec<f32>, text_field: Option<String>, query_text: String, filters: Vec<u8>, graph_seed_id: String, graph_depth: usize, graph_edge_label: Option<String>, top_k: usize, ef_search: usize, mode: QueryMode, fuzzy: bool, rrf_k: (f64, f64, f64), filter_bitmap: Option<SurrogateBitmap>, rls_filters: Vec<u8>, score_alias: Option<String>,
}, SetTextConfig { collection: QualifiedCollection, analyzer_name: Option<String>, fuzzy_default: Option<bool>, }, }
Expand description

Full-text search physical operations.

Variants§

§

Search

BM25 full-text search on the inverted index.

Fields

§field: Option<String>

Field index the query reads. None reads the whole-document index.

§query: String
§top_k: usize

Hits returned, best first. usize::MAX returns every match.

§mode: QueryMode

Boolean combination of the query terms.

§fuzzy: bool

Enable fuzzy matching (Levenshtein) for typo tolerance.

§prefilter: Option<SurrogateBitmap>

Pre-computed bitmap of eligible surrogates (from prefilter evaluation). None = no prefilter; all postings are eligible.

§filters: Vec<u8>

Residual WHERE predicates (serialized Vec<ScanFilter>). They restrict candidates before ranking, so top_k counts only rows that satisfy them.

§rls_filters: Vec<u8>

RLS filters (serialized Vec<ScanFilter>). Like filters, they restrict candidates before ranking, so top_k counts only rows the policy admits.

§scores: Vec<TextScoreSpec>

Score columns injected into each hit.

§

BM25ScoreScan

Every row filters admit, each with its score columns.

The physical plan for bm25_score(field, term) with no text_match: every admitted row is present. A row the score’s index holds but its query does not match carries 0.0. A row the index does not hold carries null.

Fields

§filters: Vec<u8>

Residual WHERE predicates (serialized Vec<ScanFilter>).

§rls_filters: Vec<u8>

RLS filters (serialized Vec<ScanFilter>). A row that fails one is dropped.

§scores: Vec<TextScoreSpec>

Score columns injected into each row.

§bound: Option<ScoreScanBound>

The query’s LIMIT pushed into the scan. None returns every admitted row. The relational tail still applies its own ORDER BY and LIMIT over the rows returned.

§

PhraseSearch

Exact phrase search: all terms must appear consecutively in the document.

Unlike Search (BM25 scoring), phrase search returns only documents where the query terms appear as an exact contiguous sequence. Scoring is positional: documents with the phrase closer to the start rank higher.

Fields

§field: Option<String>

Field index the phrase reads. None reads the whole-document index.

§terms: Vec<String>

The phrase words as written, in order. The Data Plane analyzes them once with the collection’s analyzer and matches the tokens as a contiguous sequence.

§top_k: usize

Hits returned, best first. usize::MAX returns every match.

§prefilter: Option<SurrogateBitmap>

Pre-computed bitmap of eligible surrogates (from prefilter evaluation).

§filters: Vec<u8>

Residual WHERE predicates (serialized Vec<ScanFilter>), applied before ranking.

§rls_filters: Vec<u8>

RLS filters (serialized Vec<ScanFilter>), applied before ranking.

§scores: Vec<TextScoreSpec>

Score columns injected into each hit.

§

HybridSearch

Hybrid search: vector similarity + BM25 text, fused via RRF.

Fields

§vector_field: String

Vector column the vector leg searches.

§query_vector: Vec<f32>
§text_field: Option<String>

Field index the text leg reads. None reads the whole-document index.

§query_text: String
§filters: Vec<u8>

Residual WHERE predicates (serialized Vec<ScanFilter>). They restrict both legs before fusion.

§top_k: usize
§ef_search: usize
§mode: QueryMode

Boolean combination of the text leg’s query terms.

§fuzzy: bool
§vector_weight: f32

Weight for vector results in RRF (0.0–1.0). Default: 0.5.

§filter_bitmap: Option<SurrogateBitmap>
§rls_filters: Vec<u8>

RLS post-fusion filters.

§score_alias: Option<String>

SELECT-list alias the response should use for the RRF score column. None means the executor uses the fixed internal name rrf_score. Set by the planner from the SELECT alias for the rrf_score(...) call.

§

FtsIndexDoc

Index a document into the inverted FTS index.

Used by the sync path when a Lite client sends an FtsIndex frame. Origin assigns a surrogate for (collection, doc_id) on the Control Plane before dispatch; surrogate is the pre-assigned value.

Fields

§surrogate: Surrogate

Pre-assigned global surrogate for (collection, doc_id).

§fields: Vec<(String, String)>

(field, text) per top-level string field. Empty removes the document from every index.

§provenance: Option<SyncProvenance>

Sync provenance: identifies the originating peer and sequence for idempotency.

§

FtsDeleteDoc

Remove a document from the inverted FTS index.

Used by the sync path when a Lite client sends an FtsDelete frame.

Fields

§surrogate: Option<Surrogate>

The global surrogate (collection, doc_id) is bound to. None when the key’s home binds none: the delete removes nothing and still commits its sync provenance.

§provenance: Option<SyncProvenance>

Sync provenance: identifies the originating peer and sequence for idempotency.

§

HybridSearchTriple

Three-source hybrid search: vector + BM25 text + graph BFS, fused via weighted RRF.

Extends HybridSearch with an optional graph BFS leg. The graph leg performs a BFS from graph_seed_id up to graph_depth hops, filtering edges by graph_edge_label when set. All three ranked lists are passed to reciprocal_rank_fusion_weighted with per-source k-constants.

Fields

§vector_field: String

Vector column the vector leg searches.

§query_vector: Vec<f32>
§text_field: Option<String>

Field index the text leg reads. None reads the whole-document index.

§query_text: String
§filters: Vec<u8>

Residual WHERE predicates (serialized Vec<ScanFilter>). They restrict every leg before fusion.

§graph_seed_id: String

Node id used as the BFS seed for the graph leg.

§graph_depth: usize

Maximum BFS depth from the seed node.

§graph_edge_label: Option<String>

Edge label filter for graph BFS. None = all edges.

§top_k: usize
§ef_search: usize
§mode: QueryMode

Boolean combination of the text leg’s query terms.

§fuzzy: bool
§rrf_k: (f64, f64, f64)

Per-source RRF k constants: (vector_k, text_k, graph_k).

§filter_bitmap: Option<SurrogateBitmap>
§rls_filters: Vec<u8>

RLS post-fusion filters.

§score_alias: Option<String>

SELECT-list alias for the fused RRF score column.

§

SetTextConfig

Bind a collection’s per-collection FTS analyzer.

Persists to backend metadata (InvertedIndex::set_collection_analyzer) so InvertedIndex::analyze_for_collection resolves it for every subsequent tokenization of the collection’s text — forward indexing, the in-transaction staged-write overlay, and query-time scoring alike. Config-only, single-node, non-WAL-durable — the same dispatch shape VectorOp::SetParams uses for CREATE VECTOR INDEX.

Fields

§analyzer_name: Option<String>

Analyzer name, already checked against nodedb_fts::index::analyzer_config::analyzer_exists by the DDL layer (e.g. “standard”, “english”, “japanese”). None leaves the collection’s current analyzer in place.

§fuzzy_default: Option<bool>

Whether searches over this collection fall back to fuzzy matching by default. None leaves the current setting in place.

Trait Implementations§

Source§

impl Clone for TextOp

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for TextOp

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for TextOp

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl<'__msgpack_de> FromMessagePack<'__msgpack_de> for TextOp

Source§

fn read<R: Read<'__msgpack_de>>(reader: &mut R) -> Result<Self, Error>
where Self: Sized,

Reads the MessagePack representation of this value from the provided reader.
Source§

impl PartialEq for TextOp

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl Serialize for TextOp

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for TextOp

Source§

impl ToMessagePack for TextOp

Source§

fn write<W: Write>(&self, writer: &mut W) -> Result<(), Error>

Writes the MessagePack representation of this value into the provided writer.
Source§

fn write_slice<W>(values: &[Self], writer: &mut W) -> Result<(), Error>
where W: Write, Self: Sized,

Writes the MessagePack representation of a slice of values into the provided writer.
Source§

fn size_hint(&self) -> Option<TrustedSizeHint>

Returns a trusted upper bound for the number of bytes written by the next call to Self::write, or None when it cannot be determined cheaply. Read more
Source§

fn max_size() -> Option<TrustedSizeHint>
where Self: Sized,

Returns a trusted upper bound valid for every value of this type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> ArchivePointee for T

Source§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
Source§

fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromMessagePackOwned for T
where T: for<'a> FromMessagePack<'a>,

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> LayoutRaw for T

Source§

fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>

Returns the layout of the type.
Source§

impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
where T: SharedNiching<N1, N2>, N1: Niching<T>, N2: Niching<T>,

Source§

unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool

Returns whether the given value has been niched. Read more
Source§

fn resolve_niched(out: Place<NichedOption<T, N1>>)

Writes data to out indicating that a T is niched.
Source§

impl<T> Paint for T
where T: ?Sized,

Source§

fn fg(&self, value: Color) -> Painted<&T>

Returns a styled value derived from self with the foreground set to value.

This method should be used rarely. Instead, prefer to use color-specific builder methods like red() and green(), which have the same functionality but are pithier.

§Example

Set foreground color to white using fg():

use yansi::{Paint, Color};

painted.fg(Color::White);

Set foreground color to white using white().

use yansi::Paint;

painted.white();
Source§

fn primary(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Primary].

§Example
println!("{}", value.primary());
Source§

fn fixed(&self, color: u8) -> Painted<&T>

Returns self with the fg() set to [Color :: Fixed].

§Example
println!("{}", value.fixed(color));
Source§

fn rgb(&self, r: u8, g: u8, b: u8) -> Painted<&T>

Returns self with the fg() set to [Color :: Rgb].

§Example
println!("{}", value.rgb(r, g, b));
Source§

fn black(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Black].

§Example
println!("{}", value.black());
Source§

fn red(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Red].

§Example
println!("{}", value.red());
Source§

fn green(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Green].

§Example
println!("{}", value.green());
Source§

fn yellow(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Yellow].

§Example
println!("{}", value.yellow());
Source§

fn blue(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Blue].

§Example
println!("{}", value.blue());
Source§

fn magenta(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Magenta].

§Example
println!("{}", value.magenta());
Source§

fn cyan(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Cyan].

§Example
println!("{}", value.cyan());
Source§

fn white(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: White].

§Example
println!("{}", value.white());
Source§

fn bright_black(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightBlack].

§Example
println!("{}", value.bright_black());
Source§

fn bright_red(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightRed].

§Example
println!("{}", value.bright_red());
Source§

fn bright_green(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightGreen].

§Example
println!("{}", value.bright_green());
Source§

fn bright_yellow(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightYellow].

§Example
println!("{}", value.bright_yellow());
Source§

fn bright_blue(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightBlue].

§Example
println!("{}", value.bright_blue());
Source§

fn bright_magenta(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightMagenta].

§Example
println!("{}", value.bright_magenta());
Source§

fn bright_cyan(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightCyan].

§Example
println!("{}", value.bright_cyan());
Source§

fn bright_white(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightWhite].

§Example
println!("{}", value.bright_white());
Source§

fn bg(&self, value: Color) -> Painted<&T>

Returns a styled value derived from self with the background set to value.

This method should be used rarely. Instead, prefer to use color-specific builder methods like on_red() and on_green(), which have the same functionality but are pithier.

§Example

Set background color to red using fg():

use yansi::{Paint, Color};

painted.bg(Color::Red);

Set background color to red using on_red().

use yansi::Paint;

painted.on_red();
Source§

fn on_primary(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Primary].

§Example
println!("{}", value.on_primary());
Source§

fn on_fixed(&self, color: u8) -> Painted<&T>

Returns self with the bg() set to [Color :: Fixed].

§Example
println!("{}", value.on_fixed(color));
Source§

fn on_rgb(&self, r: u8, g: u8, b: u8) -> Painted<&T>

Returns self with the bg() set to [Color :: Rgb].

§Example
println!("{}", value.on_rgb(r, g, b));
Source§

fn on_black(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Black].

§Example
println!("{}", value.on_black());
Source§

fn on_red(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Red].

§Example
println!("{}", value.on_red());
Source§

fn on_green(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Green].

§Example
println!("{}", value.on_green());
Source§

fn on_yellow(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Yellow].

§Example
println!("{}", value.on_yellow());
Source§

fn on_blue(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Blue].

§Example
println!("{}", value.on_blue());
Source§

fn on_magenta(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Magenta].

§Example
println!("{}", value.on_magenta());
Source§

fn on_cyan(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Cyan].

§Example
println!("{}", value.on_cyan());
Source§

fn on_white(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: White].

§Example
println!("{}", value.on_white());
Source§

fn on_bright_black(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightBlack].

§Example
println!("{}", value.on_bright_black());
Source§

fn on_bright_red(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightRed].

§Example
println!("{}", value.on_bright_red());
Source§

fn on_bright_green(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightGreen].

§Example
println!("{}", value.on_bright_green());
Source§

fn on_bright_yellow(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightYellow].

§Example
println!("{}", value.on_bright_yellow());
Source§

fn on_bright_blue(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightBlue].

§Example
println!("{}", value.on_bright_blue());
Source§

fn on_bright_magenta(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightMagenta].

§Example
println!("{}", value.on_bright_magenta());
Source§

fn on_bright_cyan(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightCyan].

§Example
println!("{}", value.on_bright_cyan());
Source§

fn on_bright_white(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightWhite].

§Example
println!("{}", value.on_bright_white());
Source§

fn attr(&self, value: Attribute) -> Painted<&T>

Enables the styling Attribute value.

This method should be used rarely. Instead, prefer to use attribute-specific builder methods like bold() and underline(), which have the same functionality but are pithier.

§Example

Make text bold using attr():

use yansi::{Paint, Attribute};

painted.attr(Attribute::Bold);

Make text bold using using bold().

use yansi::Paint;

painted.bold();
Source§

fn bold(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Bold].

§Example
println!("{}", value.bold());
Source§

fn dim(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Dim].

§Example
println!("{}", value.dim());
Source§

fn italic(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Italic].

§Example
println!("{}", value.italic());
Source§

fn underline(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Underline].

§Example
println!("{}", value.underline());

Returns self with the attr() set to [Attribute :: Blink].

§Example
println!("{}", value.blink());

Returns self with the attr() set to [Attribute :: RapidBlink].

§Example
println!("{}", value.rapid_blink());
Source§

fn invert(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Invert].

§Example
println!("{}", value.invert());
Source§

fn conceal(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Conceal].

§Example
println!("{}", value.conceal());
Source§

fn strike(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Strike].

§Example
println!("{}", value.strike());
Source§

fn quirk(&self, value: Quirk) -> Painted<&T>

Enables the yansi Quirk value.

This method should be used rarely. Instead, prefer to use quirk-specific builder methods like mask() and wrap(), which have the same functionality but are pithier.

§Example

Enable wrapping using .quirk():

use yansi::{Paint, Quirk};

painted.quirk(Quirk::Wrap);

Enable wrapping using wrap().

use yansi::Paint;

painted.wrap();
Source§

fn mask(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Mask].

§Example
println!("{}", value.mask());
Source§

fn wrap(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Wrap].

§Example
println!("{}", value.wrap());
Source§

fn linger(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Linger].

§Example
println!("{}", value.linger());
Source§

fn clear(&self) -> Painted<&T>

👎Deprecated since 1.0.1:

renamed to resetting() due to conflicts with Vec::clear(). The clear() method will be removed in a future release.

Returns self with the quirk() set to [Quirk :: Clear].

§Example
println!("{}", value.clear());
Source§

fn resetting(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Resetting].

§Example
println!("{}", value.resetting());
Source§

fn bright(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Bright].

§Example
println!("{}", value.bright());
Source§

fn on_bright(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: OnBright].

§Example
println!("{}", value.on_bright());
Source§

fn whenever(&self, value: Condition) -> Painted<&T>

Conditionally enable styling based on whether the Condition value applies. Replaces any previous condition.

See the crate level docs for more details.

§Example

Enable styling painted only when both stdout and stderr are TTYs:

use yansi::{Paint, Condition};

painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);
Source§

fn new(self) -> Painted<Self>
where Self: Sized,

Create a new Painted with a default Style. Read more
Source§

fn paint<S>(&self, style: S) -> Painted<&Self>
where S: Into<Style>,

Apply a style wholesale to self. Any previous style is replaced. Read more
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Pointee for T

Source§

type Metadata = ()

The metadata type for pointers and references to this type.
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Rleable for T
where T: Clone + PartialEq + Serialize + for<'de> Deserialize<'de>,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> Scalar for T
where T: 'static + Clone + PartialEq + Debug,

Source§

impl<SS, SP> SupersetOf<SS> for SP
where SS: SubsetOf<SP>,

Source§

fn to_subset(&self) -> Option<SS>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
Source§

fn is_in_subset(&self) -> bool

Checks if self is actually part of its subset T (and can be converted to it).
Source§

fn to_subset_unchecked(&self) -> SS

Use with care! Same as self.to_subset but without any property checks. Always succeeds.
Source§

fn from_subset(element: &SS) -> SP

The inclusion map: converts self to the equivalent element of its superset.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more