option

package
v0.1.3 Latest Latest
Warning

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

Go to latest
Published: May 5, 2024 License: BSD-3-Clause Imports: 0 Imported by: 0

Documentation

Overview

Package option provides optional (nullable) types.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Option

type Option[T any] struct {
	Valid bool `label:"Set"`
	Value T
}

Option represents an optional (nullable) type. If Valid is true, Option represents Value. Otherwise, it represents a null/unset/invalid value.

func New

func New[T any](v T) *Option[T]

New returns a new Option set to the given value.

func (*Option[T]) Clear

func (o *Option[T]) Clear() *Option[T]

Clear marks the value as null/unset/invalid.

func (*Option[T]) Or

func (o *Option[T]) Or(or T) T

Or returns the value of the option if it is not marked as null/unset/invalid, and otherwise it returns the given value.

func (*Option[T]) Set

func (o *Option[T]) Set(v T) *Option[T]

Set sets the value to the given value.

func (*Option[T]) ShouldShow

func (o *Option[T]) ShouldShow(field string) bool

Jump to

Keyboard shortcuts

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