1
0
Fork 0
mirror of https://github.com/diamondburned/cchat-discord.git synced 2024-12-27 14:27:43 +00:00
cchat-discord/internal/segments/segutil/segutil.go

43 lines
803 B
Go

package segutil
import (
"bytes"
"strings"
"github.com/diamondburned/cchat/text"
)
// helper global functions
func Write(rich *text.Rich, content string, segs ...text.Segment) (start, end int) {
start = len(rich.Content)
end = len(rich.Content) + len(content)
rich.Content += content
return
}
func WriteBuf(w *bytes.Buffer, b []byte) (start, end int) {
start = w.Len()
w.Write(b)
end = w.Len()
return start, end
}
func WriteStringBuf(w *bytes.Buffer, b string) (start, end int) {
start = w.Len()
w.WriteString(b)
end = w.Len()
return start, end
}
func WriteStringBuilder(w *strings.Builder, b string) (start, end int) {
start = w.Len()
w.WriteString(b)
end = w.Len()
return start, end
}
func Add(r *text.Rich, seg ...text.Segment) {
r.Segments = append(r.Segments, seg...)
}