output

package
v0.10.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 23, 2026 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DiffValue added in v0.10.0

func DiffValue(oldVal, newVal string) string

DiffValue formats a field value as "old => new" when the value changes, or just "val" when unchanged.

func FullDateTime

func FullDateTime(t time.Time) string

FullDateTime formats t as "2006-01-02 15:04:05 UTC". Returns empty string for zero time.

func HumanTime

func HumanTime(t time.Time) string

HumanTime returns a relative human-readable time (e.g., "3 hours ago"). Returns empty string for zero time.

func OptionalValue added in v0.10.0

func OptionalValue(v any, fallback string) string

OptionalValue formats an optional pointer value as a string. Returns fallback for nil pointers. Supports any pointer type. Booleans are formatted as "yes"/"no"; all other types use their default format.

func PrintJSON

func PrintJSON(w io.Writer, v any) error

PrintJSON marshals items as JSON and writes to w. For proto messages, uses protojson for proper field naming.

Types

type Table

type Table[T any] struct {
	// contains filtered or unexported fields
}

Table renders items as an ASCII table.

func NewTable

func NewTable[T any](w io.Writer) *Table[T]

NewTable creates a new Table that writes to the given writer.

func (*Table[T]) AddField

func (t *Table[T]) AddField(name string, fn func(T) string)

AddField adds a column to the table with a header name and a field extraction function.

func (*Table[T]) Write

func (t *Table[T]) Write(items []T)

Write renders the table with the given items.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL