pub enum AnalysisProblem {
Show 18 variants
NameResolution(NameResolution),
OverloadResolution(OverloadResolution),
ExtensionNotFound(String),
NullabilityUnknown(String),
ArgumentTypeMissmatch(FullName, usize),
DuplicateDefElemKey(DefElemKey),
ExplicitCastNotDefined(TypeReference, TypeReference),
CoalesceExprTypeUnknown(Vec<SemScalarExpr>),
ExpressionTypeNotKnown(SemScalarExpr),
UndefinedOperator(AExprKind, OperatorName, Option<SemScalarExpr>, Option<SemScalarExpr>),
RequireArray(SemScalarExpr, TypeReference),
SubQueryNotHaveColumnForDerivedColumnName(),
IncompatibleCaseValues(HashSet<TypeReference>),
CaseWhenExprTypeUnknown(SemScalarExpr),
ArrayIndexTypeMissmatch(SemScalarExpr, TypeReference),
MemberAccessRequiresCompositeType(FullName, String),
FunctionArgImplicitCastNotFound(FullName, usize, TypeDefinition, SemScalarExpr),
ImplicitCastNotFound(TypeReference, TypeReference),
}Expand description
Semantic analysis problems
Variants§
NameResolution(NameResolution)
Name resolution problems
OverloadResolution(OverloadResolution)
Overload resolution problems
ExtensionNotFound(String)
extension not found
NullabilityUnknown(String)
can not to guess nullablity
ArgumentTypeMissmatch(FullName, usize)
Argument type missmatch
DuplicateDefElemKey(DefElemKey)
duplicate def elem key
ExplicitCastNotDefined(TypeReference, TypeReference)
explicit cast not defined
CoalesceExprTypeUnknown(Vec<SemScalarExpr>)
Coalesce expr type unknown
ExpressionTypeNotKnown(SemScalarExpr)
Expression type not known
UndefinedOperator(AExprKind, OperatorName, Option<SemScalarExpr>, Option<SemScalarExpr>)
Operator Not Defined
RequireArray(SemScalarExpr, TypeReference)
Array Required
SubQueryNotHaveColumnForDerivedColumnName()
sub query not have a derived column
IncompatibleCaseValues(HashSet<TypeReference>)
incompatible case values
CaseWhenExprTypeUnknown(SemScalarExpr)
case when expr type unknown
ArrayIndexTypeMissmatch(SemScalarExpr, TypeReference)
array type missmatch
MemberAccessRequiresCompositeType(FullName, String)
member access requires composite type
FunctionArgImplicitCastNotFound(FullName, usize, TypeDefinition, SemScalarExpr)
function argument implicit cast not found
ImplicitCastNotFound(TypeReference, TypeReference)
implicit cast not found
Implementations§
Source§impl AnalysisProblem
impl AnalysisProblem
Sourcepub fn column_not_found_in_view(
view_name: &ViewName,
column: &ColumnName,
) -> Self
pub fn column_not_found_in_view( view_name: &ViewName, column: &ColumnName, ) -> Self
column not found in view
Sourcepub fn column_not_found_in_subquery(
alias: &AliasName,
column: &ColumnName,
) -> Self
pub fn column_not_found_in_subquery( alias: &AliasName, column: &ColumnName, ) -> Self
specfied column not found in sub query
Sourcepub fn column_not_found_in_table(
table_name: &TableName,
col_name: &ColumnName,
) -> Self
pub fn column_not_found_in_table( table_name: &TableName, col_name: &ColumnName, ) -> Self
specified column not found in table
Sourcepub fn column_not_found_in_cte(cte_name: &CteName, column: &ColumnName) -> Self
pub fn column_not_found_in_cte(cte_name: &CteName, column: &ColumnName) -> Self
specified column not found in CTE
Sourcepub fn column_not_found_in_source(column: &ColumnName) -> Self
pub fn column_not_found_in_source(column: &ColumnName) -> Self
column not found
Sourcepub fn column_not_found_in_table_function(
alias: &AliasName,
column: &ColumnName,
) -> Self
pub fn column_not_found_in_table_function( alias: &AliasName, column: &ColumnName, ) -> Self
column not found in table function
Source§impl AnalysisProblem
impl AnalysisProblem
Sourcepub fn duplicate_alias(alias_name: &AliasName) -> Self
pub fn duplicate_alias(alias_name: &AliasName) -> Self
alias name duplicate in FROM clause
Sourcepub fn composite_type_field_not_found(
composite_type: &TypeReference,
field_name: &str,
) -> Self
pub fn composite_type_field_not_found( composite_type: &TypeReference, field_name: &str, ) -> Self
accessing member not found in complex type
Sourcepub fn ambiguous_column(column: &ColumnName) -> Self
pub fn ambiguous_column(column: &ColumnName) -> Self
same column name existing from clause
Sourcepub fn table_not_found(table_name: &TableName) -> Self
pub fn table_not_found(table_name: &TableName) -> Self
alter table not found
Sourcepub fn sequence_not_found(seq_name: &FullName) -> Self
pub fn sequence_not_found(seq_name: &FullName) -> Self
sequence not found
Sourcepub fn index_not_found(index_name: &str) -> Self
pub fn index_not_found(index_name: &str) -> Self
specified index not found
Sourcepub fn view_not_found(view_name: &ViewName) -> Self
pub fn view_not_found(view_name: &ViewName) -> Self
specified view not found
Sourcepub fn domain_type_name_not_found(
domain_name: &FullName,
type_name: &TypeName,
type_name_span: &StringSpan,
) -> Self
pub fn domain_type_name_not_found( domain_name: &FullName, type_name: &TypeName, type_name_span: &StringSpan, ) -> Self
domain not found
Sourcepub fn relation_not_found(table_name: &TableName) -> Self
pub fn relation_not_found(table_name: &TableName) -> Self
specified table not found
Sourcepub fn function_not_found(func_name: &FullName, func_span: &StringSpan) -> Self
pub fn function_not_found(func_name: &FullName, func_span: &StringSpan) -> Self
calling function not found
Sourcepub fn table_function_not_found(func: &FullName) -> Self
pub fn table_function_not_found(func: &FullName) -> Self
specified table function not found
Sourcepub fn column_type_not_found(
table_name: &TableName,
colname: &ColumnName,
type_name: &FullName,
) -> Self
pub fn column_type_not_found( table_name: &TableName, colname: &ColumnName, type_name: &FullName, ) -> Self
table column type
Sourcepub fn undefined_alias(alias_name: String) -> Self
pub fn undefined_alias(alias_name: String) -> Self
undefined alias
Source§impl AnalysisProblem
impl AnalysisProblem
Sourcepub fn function_overload_resolution_failed(
func_name: &FullName,
arg_types: &ArgumentBindingCollection,
) -> Self
pub fn function_overload_resolution_failed( func_name: &FullName, arg_types: &ArgumentBindingCollection, ) -> Self
function argument type missmatch to overloads
Sourcepub fn binary_operator_overload_resolution_failed(
operator_def: &OperatorDefinition,
left_type: &TypeReference,
right_type: &TypeReference,
) -> Self
pub fn binary_operator_overload_resolution_failed( operator_def: &OperatorDefinition, left_type: &TypeReference, right_type: &TypeReference, ) -> Self
Binary operator type not matches overloads
Sourcepub fn unary_operator_overload_resolution_failed(
operator_def: &OperatorDefinition,
arg_type: &TypeReference,
) -> Self
pub fn unary_operator_overload_resolution_failed( operator_def: &OperatorDefinition, arg_type: &TypeReference, ) -> Self
Unarry operator type not matches overloads
Sourcepub fn binary_operator_overload_ambiguous(
operator_def: &OperatorDefinition,
left_type: &TypeReference,
right_type: &TypeReference,
) -> Self
pub fn binary_operator_overload_ambiguous( operator_def: &OperatorDefinition, left_type: &TypeReference, right_type: &TypeReference, ) -> Self
Binary operaot type overloads ambiguous
Sourcepub fn unary_operator_overload_ambiguous(
operator_def: &OperatorDefinition,
arg_type: &TypeReference,
) -> Self
pub fn unary_operator_overload_ambiguous( operator_def: &OperatorDefinition, arg_type: &TypeReference, ) -> Self
Unarray operator type ambiguous
Source§impl AnalysisProblem
impl AnalysisProblem
Sourcepub fn render_report(
&self,
theme: &HighlighterTheme,
source: String,
) -> Result<String, AnalysisError>
pub fn render_report( &self, theme: &HighlighterTheme, source: String, ) -> Result<String, AnalysisError>
covert problem to report
Sourcepub fn extension_not_found(name: &str) -> Self
pub fn extension_not_found(name: &str) -> Self
extension not found
Sourcepub fn nullability_unknown(item_name: &str) -> Self
pub fn nullability_unknown(item_name: &str) -> Self
expression nullability not known
Sourcepub fn argument_type_missmatch(func_name: &FullName, index: usize) -> Self
pub fn argument_type_missmatch(func_name: &FullName, index: usize) -> Self
function argument type missmatch
Sourcepub fn duplicate_def_elem_key(key: &DefElemKey) -> Self
pub fn duplicate_def_elem_key(key: &DefElemKey) -> Self
duplicate name in definition element
Sourcepub fn explicit_cast_not_defined(
source: &TypeReference,
target: &TypeReference,
) -> Self
pub fn explicit_cast_not_defined( source: &TypeReference, target: &TypeReference, ) -> Self
doing explicit cast coversion , but not allowed
Sourcepub fn array_required(
expr: &SemScalarExpr,
type_inspected: &TypeReference,
) -> Self
pub fn array_required( expr: &SemScalarExpr, type_inspected: &TypeReference, ) -> Self
expression requires array but not
Sourcepub fn array_index_type_missmatch(
expr: &SemScalarExpr,
type_inspected: &TypeReference,
) -> Self
pub fn array_index_type_missmatch( expr: &SemScalarExpr, type_inspected: &TypeReference, ) -> Self
array index type not integer
Sourcepub fn member_access_requires_composite_type(
type_name: &FullName,
member_name: &str,
) -> Self
pub fn member_access_requires_composite_type( type_name: &FullName, member_name: &str, ) -> Self
member accessing to non-composite type
Sourcepub fn undefined_operator(
aexpr_op: AExprKind,
name: &OperatorName,
left_arg: &Option<SemScalarExpr>,
right_arg: &Option<SemScalarExpr>,
) -> Self
pub fn undefined_operator( aexpr_op: AExprKind, name: &OperatorName, left_arg: &Option<SemScalarExpr>, right_arg: &Option<SemScalarExpr>, ) -> Self
operator not defined
Sourcepub fn parameter_type_missmatch_for_table_function(
call: &FuncCall,
arg_types: ArgumentBindingCollection,
) -> Self
pub fn parameter_type_missmatch_for_table_function( call: &FuncCall, arg_types: ArgumentBindingCollection, ) -> Self
parameter type can not cast to function argument
Sourcepub fn function_result_set_type_not_found(ret_type: &FullName) -> Self
pub fn function_result_set_type_not_found(ret_type: &FullName) -> Self
specified function result set type not found
Sourcepub fn unreachable_coalesce_argument(
arg_expr: &SemScalarExpr,
first_non_null: &SemScalarExpr,
) -> Self
pub fn unreachable_coalesce_argument( arg_expr: &SemScalarExpr, first_non_null: &SemScalarExpr, ) -> Self
coalece argument unreachable
Sourcepub fn unknown_type_in_coalesce_expr(arg_expr: &SemScalarExpr) -> Self
pub fn unknown_type_in_coalesce_expr(arg_expr: &SemScalarExpr) -> Self
unknown type used in coalesce
Sourcepub fn coalesce_expr_type_ambiguous(
arg_exprs: &Vec<SemScalarExpr>,
candiates: &HashSet<TypeReference>,
choose: Option<&TypeReference>,
) -> Self
pub fn coalesce_expr_type_ambiguous( arg_exprs: &Vec<SemScalarExpr>, candiates: &HashSet<TypeReference>, choose: Option<&TypeReference>, ) -> Self
colesce expression result type ambiguous
Sourcepub fn coalesce_expr_type_unknown(arg_exprs: &[SemScalarExpr]) -> Self
pub fn coalesce_expr_type_unknown(arg_exprs: &[SemScalarExpr]) -> Self
all of coalesce type is not known
Sourcepub fn function_arg_implicit_cast_not_found(
func_name: &FullName,
index: usize,
t: &TypeDefinition,
arg: &SemScalarExpr,
) -> Self
pub fn function_arg_implicit_cast_not_found( func_name: &FullName, index: usize, t: &TypeDefinition, arg: &SemScalarExpr, ) -> Self
implicit cast not allowed
Sourcepub fn view_not_matview(view_name: &ViewName) -> Self
pub fn view_not_matview(view_name: &ViewName) -> Self
view used as materialized view, but not a materialized view
Sourcepub fn operator_name_syntax(v: &[String]) -> Self
pub fn operator_name_syntax(v: &[String]) -> Self
operator name syntax is invalid
Sourcepub fn expression_type_not_known(expr: &SemScalarExpr) -> Self
pub fn expression_type_not_known(expr: &SemScalarExpr) -> Self
expression type not known
Sourcepub fn case_when_type_unknown(case_when_expr: SemScalarExpr) -> Self
pub fn case_when_type_unknown(case_when_expr: SemScalarExpr) -> Self
case when type unknown
Sourcepub fn implicit_cast_not_found(
ty: &TypeReference,
result_type: &TypeReference,
) -> Self
pub fn implicit_cast_not_found( ty: &TypeReference, result_type: &TypeReference, ) -> Self
implicit cast not found
Sourcepub fn incompatible_case_values(result_types: HashSet<TypeReference>) -> Self
pub fn incompatible_case_values(result_types: HashSet<TypeReference>) -> Self
incompatible cast values
Sourcepub fn unexpected_dynamic_type(sem_type: &TypeDefinition) -> Self
pub fn unexpected_dynamic_type(sem_type: &TypeDefinition) -> Self
unexpected dynamic type
Sourcepub fn table_not_have_column_for_derived_column_name() -> Self
pub fn table_not_have_column_for_derived_column_name() -> Self
table not have column
Sourcepub fn cte_not_have_column_for_derived_column_name() -> Self
pub fn cte_not_have_column_for_derived_column_name() -> Self
cte not have column
Sourcepub fn subquery_not_have_column_for_derived_column_name() -> Self
pub fn subquery_not_have_column_for_derived_column_name() -> Self
subquery not have column
Trait Implementations§
Source§impl Clone for AnalysisProblem
impl Clone for AnalysisProblem
Source§fn clone(&self) -> AnalysisProblem
fn clone(&self) -> AnalysisProblem
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for AnalysisProblem
impl RefUnwindSafe for AnalysisProblem
impl Send for AnalysisProblem
impl Sync for AnalysisProblem
impl Unpin for AnalysisProblem
impl UnwindSafe for AnalysisProblem
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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