v2k8s.io/klog/v2/internal/serialize Index | Files

package serialize

import "k8s.io/klog/v2/internal/serialize"

Index

Functions

func ErrorToString

func ErrorToString(err error) (ret string)

ErrorToString converts an error to a string, handling panics if they occur.

func KVFormat

func KVFormat(b *bytes.Buffer, k, v interface{})

func KVListFormat

func KVListFormat(b *bytes.Buffer, keysAndValues ...interface{})

func MarshalerToValue

func MarshalerToValue(m logr.Marshaler) (ret interface{})

MarshalerToValue invokes a marshaler and catches panics.

func MergeAndFormatKVs

func MergeAndFormatKVs(b *bytes.Buffer, first, second []interface{})

func MergeKVs

func MergeKVs(first, second []interface{}) []interface{}

MergeKVs deduplicates elements provided in two key/value slices.

Keys in each slice are expected to be unique, so duplicates can only occur when the first and second slice contain the same key. When that happens, the key/value pair from the second slice is used. The first slice must be well-formed (= even key/value pairs). The second one may have a missing value, in which case the special "missing value" is added to the result.

func StringerToString

func StringerToString(s fmt.Stringer) (ret string)

StringerToString converts a Stringer to a string, handling panics if they occur.

func WithValues

func WithValues(oldKV, newKV []interface{}) []interface{}

WithValues implements LogSink.WithValues. The old key/value pairs are assumed to be well-formed, the new ones are checked and padded if necessary. It returns a new slice.

Types

type AnyToStringFunc

type AnyToStringFunc func(v interface{}) string

type Formatter

type Formatter struct {
	AnyToStringHook AnyToStringFunc
}

func (Formatter) KVFormat

func (f Formatter) KVFormat(b *bytes.Buffer, k, v interface{})

KVFormat serializes one key/value pair into the provided buffer. A space gets inserted before the pair.

func (Formatter) KVListFormat

func (f Formatter) KVListFormat(b *bytes.Buffer, keysAndValues ...interface{})

KVListFormat serializes all key/value pairs into the provided buffer. A space gets inserted before the first pair and between each pair.

func (Formatter) MergeAndFormatKVs

func (f Formatter) MergeAndFormatKVs(b *bytes.Buffer, first, second []interface{})

MergeKVsInto is a variant of MergeKVs which directly formats the key/value pairs into a buffer.

Source Files

keyvalues.go

Version
v2.100.1
Published
Apr 28, 2023
Platform
windows/amd64
Imports
5 packages
Last checked
4 hours ago

Tools for package owners.