io/pointer: print all types in Type.String

Signed-off-by: Pierre Curto <pierre.curto@gmail.com>
This commit is contained in:
Pierre Curto
2021-10-17 11:42:48 +02:00
committed by Elias Naur
parent 4d22a926a9
commit ae5219e4d4
2 changed files with 42 additions and 0 deletions
+16
View File
@@ -265,6 +265,22 @@ func (op InputOp) Add(o *op.Ops) {
}
func (t Type) String() string {
if t == Cancel {
return "Cancel"
}
var buf strings.Builder
for tt := Type(1); tt > 0; tt <<= 1 {
if t&tt > 0 {
if buf.Len() > 0 {
buf.WriteByte('|')
}
buf.WriteString((t & tt).string())
}
}
return buf.String()
}
func (t Type) string() string {
switch t {
case Press:
return "Press"