package options

import "github.com/dotcloud/docker/libnetwork/options"

Package options provides a way to pass unstructured sets of options to a component expecting a strongly-typed configuration structure.

Index

Functions

func GenerateFromModel

func GenerateFromModel(options Generic, model any) (any, error)

GenerateFromModel takes the generic options, and tries to build a new instance of the model's type by matching keys from the generic options to fields in the model.

The return value is of the same type than the model (including a potential pointer qualifier).

Types

type CannotSetFieldError

type CannotSetFieldError struct {
	Field string
	Type  string
}

CannotSetFieldError is the error returned when the generic parameters hold a value for a field that cannot be set in the destination structure.

func (CannotSetFieldError) Error

func (e CannotSetFieldError) Error() string

type Generic

type Generic map[string]any

Generic is a basic type to store arbitrary settings.

type NoSuchFieldError

type NoSuchFieldError struct {
	Field string
	Type  string
}

NoSuchFieldError is the error returned when the generic parameters hold a value for a field absent from the destination structure.

func (NoSuchFieldError) Error

func (e NoSuchFieldError) Error() string

type TypeMismatchError

type TypeMismatchError struct {
	Field      string
	ExpectType string
	ActualType string
}

TypeMismatchError is the error returned when the type of the generic value for a field mismatches the type of the destination structure.

func (TypeMismatchError) Error

func (e TypeMismatchError) Error() string

Source Files

options.go

Version
v28.1.1+incompatible (latest)
Published
Apr 18, 2025
Platform
linux/amd64
Imports
2 packages
Last checked
48 minutes ago

Tools for package owners.