GoPLS Viewer

Home|gopls/internal/event/export/printer.go
1// Copyright 2020 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package export
6
7import (
8    "io"
9
10    "golang.org/x/tools/internal/event/core"
11    "golang.org/x/tools/internal/event/keys"
12    "golang.org/x/tools/internal/event/label"
13)
14
15type Printer struct {
16    buffer [128]byte
17}
18
19func (p *PrinterWriteEvent(w io.Writerev core.Eventlm label.Map) {
20    buf := p.buffer[:0]
21    if !ev.At().IsZero() {
22        w.Write(ev.At().AppendFormat(buf"2006/01/02 15:04:05 "))
23    }
24    msg := keys.Msg.Get(lm)
25    io.WriteString(wmsg)
26    if err := keys.Err.Get(lm); err != nil {
27        if msg != "" {
28            io.WriteString(w": ")
29        }
30        io.WriteString(werr.Error())
31    }
32    for index := 0ev.Valid(index); index++ {
33        l := ev.Label(index)
34        if !l.Valid() || l.Key() == keys.Msg || l.Key() == keys.Err {
35            continue
36        }
37        io.WriteString(w"\n\t")
38        io.WriteString(wl.Key().Name())
39        io.WriteString(w"=")
40        l.Key().Format(wbufl)
41    }
42    io.WriteString(w"\n")
43}
44
MembersX
Printer.buffer
Printer.WriteEvent
Printer.WriteEvent.w
Printer.WriteEvent.err
Printer.WriteEvent.index
Printer.WriteEvent.BlockStmt.l
Printer
Printer.WriteEvent.p
Printer.WriteEvent.ev
Printer.WriteEvent.lm
Printer.WriteEvent.msg
Members
X