aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/mlog.py
diff options
context:
space:
mode:
Diffstat (limited to 'mesonbuild/mlog.py')
-rw-r--r--mesonbuild/mlog.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/mesonbuild/mlog.py b/mesonbuild/mlog.py
index a6aa2b5..20794df 100644
--- a/mesonbuild/mlog.py
+++ b/mesonbuild/mlog.py
@@ -136,6 +136,18 @@ class AnsiDecorator:
def __str__(self) -> str:
return self.get_text(colorize_console())
+
+class AnsiText:
+ def __init__(self, *args: T.List[T.Union[str, AnsiDecorator]]):
+ self.args = args
+
+ def __len__(self) -> int:
+ return sum((len(x) for x in self.args))
+
+ def __str__(self) -> str:
+ return ''.join((str(x) for x in self.args))
+
+
def bold(text: str, quoted: bool = False) -> AnsiDecorator:
return AnsiDecorator(text, "\033[1m", quoted=quoted)