diff options
| author | Paul Buetow <paul@buetow.org> | 2026-03-10 20:01:15 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-03-10 20:01:15 +0200 |
| commit | 71e431af2e65196ad4e7bc3404e772b1726d3338 (patch) | |
| tree | 935e3b1af7c5b0033caf13ea00cf9655686b6ec9 /internal/mapr/result_renderer.go | |
| parent | f6e23930da2900c43a5389a2e7d1e38d8221a76f (diff) | |
Introduce client runtime boundaries
Diffstat (limited to 'internal/mapr/result_renderer.go')
| -rw-r--r-- | internal/mapr/result_renderer.go | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/internal/mapr/result_renderer.go b/internal/mapr/result_renderer.go new file mode 100644 index 0000000..e03ed9a --- /dev/null +++ b/internal/mapr/result_renderer.go @@ -0,0 +1,34 @@ +package mapr + +import "strings" + +// ResultRenderer formats terminal table output for mapreduce results. +type ResultRenderer interface { + WriteHeaderEntry(sb *strings.Builder, text string, isSortKey, isGroupKey bool) + WriteHeaderDelimiter(sb *strings.Builder, text string) + WriteDataEntry(sb *strings.Builder, text string) + WriteDataDelimiter(sb *strings.Builder, text string) +} + +type plainResultRenderer struct{} + +// PlainResultRenderer returns a renderer that writes uncolored terminal output. +func PlainResultRenderer() ResultRenderer { + return plainResultRenderer{} +} + +func (plainResultRenderer) WriteHeaderEntry(sb *strings.Builder, text string, _, _ bool) { + sb.WriteString(text) +} + +func (plainResultRenderer) WriteHeaderDelimiter(sb *strings.Builder, text string) { + sb.WriteString(text) +} + +func (plainResultRenderer) WriteDataEntry(sb *strings.Builder, text string) { + sb.WriteString(text) +} + +func (plainResultRenderer) WriteDataDelimiter(sb *strings.Builder, text string) { + sb.WriteString(text) +} |
