package inspect

import "github.com/docker/cli/cli/command/inspect"

Index

Functions

func Inspect

func Inspect(out io.Writer, references []string, tmplStr string, getRef GetRefFunc) error

Inspect fetches objects by reference using GetRefFunc and writes the json representation to the output writer.

Types

type GetRefFunc

type GetRefFunc func(ref string) (any, []byte, error)

GetRefFunc is a function which used by Inspect to fetch an object from a reference

type Inspector

type Inspector interface {
	// Inspect writes the raw element in JSON format.
	Inspect(typedElement any, rawElement []byte) error
	// Flush writes the result of inspecting all elements into the output stream.
	Flush() error
}

Inspector defines an interface to implement to process elements

func NewIndentedInspector

func NewIndentedInspector(outputStream io.Writer) Inspector

NewIndentedInspector generates a new inspector with an indented representation of elements.

func NewJSONInspector

func NewJSONInspector(outputStream io.Writer) Inspector

NewJSONInspector generates a new inspector with a compact representation of elements.

func NewTemplateInspector

func NewTemplateInspector(outputStream io.Writer, tmpl *template.Template) Inspector

NewTemplateInspector creates a new inspector with a template.

func NewTemplateInspectorFromString

func NewTemplateInspectorFromString(out io.Writer, tmplStr string) (Inspector, error)

NewTemplateInspectorFromString creates a new TemplateInspector from a string which is compiled into a template.

type TemplateInspector

type TemplateInspector struct {
	// contains filtered or unexported fields
}

TemplateInspector uses a text template to inspect elements.

func (*TemplateInspector) Flush

func (i *TemplateInspector) Flush() error

Flush writes the result of inspecting all elements into the output stream.

func (*TemplateInspector) Inspect

func (i *TemplateInspector) Inspect(typedElement any, rawElement []byte) error

Inspect executes the inspect template. It decodes the raw element into a map if the initial execution fails. This allows docker cli to parse inspect structs injected with Swarm fields.

Source Files

inspector.go

Version
v27.2.0+incompatible
Published
Aug 27, 2024
Platform
darwin/amd64
Imports
9 packages
Last checked
26 minutes ago

Tools for package owners.