1
Fork 0
mirror of https://github.com/RGBCube/color.v synced 2025-08-01 10:27:45 +00:00

Use inline ifs

This commit is contained in:
RGBCube 2022-11-20 20:09:55 +03:00
parent dceda93727
commit 3345868729
4 changed files with 82 additions and 82 deletions

View file

@ -22,55 +22,55 @@ enum BasicColor {
}
fn (c BasicColor) render(msg string) string {
if no_color {
return msg
}
return if no_color {
msg
} else {
func := match c {
.black { term.black }
.red { term.red }
.green { term.green }
.yellow { term.yellow }
.blue { term.blue }
.magenta { term.magenta }
.cyan { term.cyan }
.white { term.white }
.bright_black { term.bright_black }
.bright_red { term.bright_red }
.bright_green { term.bright_green }
.bright_yellow { term.bright_yellow }
.bright_blue { term.bright_blue }
.bright_magenta { term.bright_magenta }
.bright_cyan { term.bright_cyan }
.bright_white { term.bright_white }
}
func := match c {
.black { term.black }
.red { term.red }
.green { term.green }
.yellow { term.yellow }
.blue { term.blue }
.magenta { term.magenta }
.cyan { term.cyan }
.white { term.white }
.bright_black { term.bright_black }
.bright_red { term.bright_red }
.bright_green { term.bright_green }
.bright_yellow { term.bright_yellow }
.bright_blue { term.bright_blue }
.bright_magenta { term.bright_magenta }
.bright_cyan { term.bright_cyan }
.bright_white { term.bright_white }
func(msg)
}
return func(msg)
}
fn (c BasicColor) render_bg(msg string) string {
if no_color {
return msg
}
return if no_color {
msg
} else {
func := match c {
.black { term.bg_black }
.red { term.bg_red }
.green { term.bg_green }
.yellow { term.bg_yellow }
.blue { term.bg_blue }
.magenta { term.bg_magenta }
.cyan { term.bg_cyan }
.white { term.bg_white }
.bright_black { term.bright_bg_black }
.bright_red { term.bright_bg_red }
.bright_green { term.bright_bg_green }
.bright_yellow { term.bright_bg_yellow }
.bright_blue { term.bright_bg_blue }
.bright_magenta { term.bright_bg_magenta }
.bright_cyan { term.bright_bg_cyan }
.bright_white { term.bright_bg_white }
}
func := match c {
.black { term.bg_black }
.red { term.bg_red }
.green { term.bg_green }
.yellow { term.bg_yellow }
.blue { term.bg_blue }
.magenta { term.bg_magenta }
.cyan { term.bg_cyan }
.white { term.bg_white }
.bright_black { term.bright_bg_black }
.bright_red { term.bright_bg_red }
.bright_green { term.bright_bg_green }
.bright_yellow { term.bright_bg_yellow }
.bright_blue { term.bright_bg_blue }
.bright_magenta { term.bright_bg_magenta }
.bright_cyan { term.bright_bg_cyan }
.bright_white { term.bright_bg_white }
func(msg)
}
return func(msg)
}

View file

@ -37,23 +37,23 @@ pub fn new_brush(p BrushParams) !Brush {
}
pub fn (p &Brush) render(msg string) string {
if no_color || p.disabled {
return msg
}
return if no_color || p.disabled {
msg
} else {
mut result := msg
mut result := msg
if fg := p.fg {
result = fg.render(result)
}
if bg := p.bg {
result = bg.render(result)
}
for style in p.style {
result = style.render(result)
}
if fg := p.fg {
result = fg.render(result)
result
}
if bg := p.bg {
result = bg.render(result)
}
for style in p.style {
result = style.render(result)
}
return result
}
pub fn (p &Brush) cprint(msg string) {

View file

@ -16,22 +16,22 @@ enum Style {
}
pub fn (s Style) render(msg string) string {
if no_color {
return msg
}
return if no_color {
msg
} else {
func := match s {
.reset { term.reset }
.bold { term.bold }
.dim { term.dim }
.italic { term.italic }
.underline { term.underline }
.slow_blink { term.slow_blink }
.rapid_blink { term.rapid_blink }
.inverse { term.inverse }
.hidden { term.hidden }
.strikethrough { term.strikethrough }
}
func := match s {
.reset { term.reset }
.bold { term.bold }
.dim { term.dim }
.italic { term.italic }
.underline { term.underline }
.slow_blink { term.slow_blink }
.rapid_blink { term.rapid_blink }
.inverse { term.inverse }
.hidden { term.hidden }
.strikethrough { term.strikethrough }
func(msg)
}
return func(msg)
}

View file

@ -21,17 +21,17 @@ struct TrueColor {
}
fn (c TrueColor) render(msg string) string {
if no_color {
return msg
return if no_color {
msg
} else {
term.rgb(c.r, c.g, c.b, msg)
}
return term.rgb(c.r, c.g, c.b, msg)
}
fn (c TrueColor) render_bg(msg string) string {
if no_color {
return msg
return if no_color {
msg
} else {
term.bg_rgb(c.r, c.g, c.b, msg)
}
return term.bg_rgb(c.r, c.g, c.b, msg)
}