// Format wraps a value of an arbitrary type and implement fmt.Stringer and // logr.Marshaler for them. Stringer returns pretty-printed JSON. MarshalLog // returns the original value with a type that has no special methods, in // particular no MarshalLog or MarshalJSON. // // Wrapping values like that is useful when the value has a broken // implementation of these special functions (for example, a type which // inherits String from TypeMeta, but then doesn't re-implement String) or the // implementation produces output that is less readable or unstructured (for // example, the generated String functions for Kubernetes API types). func Format(obj interface{ … } type formatAny … func (f formatAny) String() string { … } func (f formatAny) MarshalLog() interface{ … } var _ … var _ …