RosettaCodeData/Task/Metaprogramming/Sidef/metaprogramming-2.sidef

21 lines
529 B
Plaintext

var colors = Hash(
'black' => "000",
'red' => "f00",
'green' => "0f0",
'yellow' => "ff0",
'blue' => "00f",
'magenta' => "f0f",
'cyan' => "0ff",
'white' => "fff",
)
colors.each { |color, code|
String.def_method("in_#{color}", func (self) {
'<span style="color: #' + code + '">' + self + '</span>'
})
}
say "blue".in_blue;
say "red".in_red;
say "white".in_white;