MCPcopy
hub / github.com/pterm/pterm / getString

Method getString

multi_live_printer.go:56–78  ·  view source on GitHub ↗

getString returns all buffers appended and separated by a newline.

()

Source from the content-addressed store, hash-verified

54
55// getString returns all buffers appended and separated by a newline.
56func (p *MultiPrinter) getString() string {
57 var buffer bytes.Buffer
58 for _, b := range p.buffers {
59 s := b.String()
60 s = strings.Trim(s, "\n")
61
62 parts := strings.Split(s, "\r") // only get the last override
63
64 // check if the last part is empty, if so remove it, repeat until not
65 // empty. If there is no part left, don't do anything
66 for len(parts) > 0 && parts[len(parts)-1] == "" {
67 parts = parts[:len(parts)-1]
68 }
69
70 if len(parts) > 0 {
71 s = strings.Trim(parts[len(parts)-1], "\n\r")
72 buffer.WriteString(s)
73 buffer.WriteString("\n")
74 }
75 }
76
77 return buffer.String()
78}
79
80func (p *MultiPrinter) Start() (*MultiPrinter, error) {
81 p.IsActive = true

Callers 3

StartMethod · 0.95
StopMethod · 0.95

Calls 1

StringMethod · 0.45

Tested by 1