(name string)
| 58 | } |
| 59 | |
| 60 | func (l *logConsumer) register(name string) *presenter { |
| 61 | var p *presenter |
| 62 | root, _, found := strings.Cut(name, " ") |
| 63 | if found { |
| 64 | parent := l.getPresenter(root) |
| 65 | p = &presenter{ |
| 66 | colors: parent.colors, |
| 67 | name: name, |
| 68 | prefix: parent.prefix, |
| 69 | } |
| 70 | } else { |
| 71 | cf := monochrome |
| 72 | if l.color { |
| 73 | switch name { |
| 74 | case "": |
| 75 | cf = monochrome |
| 76 | case api.WatchLogger: |
| 77 | cf = makeColorFunc("92") |
| 78 | default: |
| 79 | cf = nextColor() |
| 80 | } |
| 81 | } |
| 82 | p = &presenter{ |
| 83 | colors: cf, |
| 84 | name: name, |
| 85 | } |
| 86 | } |
| 87 | l.presenters.Store(name, p) |
| 88 | l.computeWidth() |
| 89 | if l.prefix { |
| 90 | l.presenters.Range(func(key, value any) bool { |
| 91 | p := value.(*presenter) |
| 92 | p.setPrefix(l.width) |
| 93 | return true |
| 94 | }) |
| 95 | } |
| 96 | return p |
| 97 | } |
| 98 | |
| 99 | func (l *logConsumer) getPresenter(container string) *presenter { |
| 100 | p, ok := l.presenters.Load(container) |
no test coverage detected