lazy

package
v0.125.0 Latest Latest
Warning

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

Go to latest
Published: Apr 16, 2024 License: Apache-2.0 Imports: 5 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Init

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

Init holds a graph of lazily initialized dependencies.

func New

func New() *Init

New creates a new empty Init.

func (*Init) Add

func (ini *Init) Add(initFn func(context.Context) (any, error)) *Init

Add adds a func as a new child dependency.

func (*Init) AddWithTimeout

func (ini *Init) AddWithTimeout(timeout time.Duration, f func(ctx context.Context) (any, error)) *Init

AddWithTimeout is same as Add, but with a timeout that aborts initialization.

func (*Init) Branch

func (ini *Init) Branch(initFn func(context.Context) (any, error)) *Init

Branch creates a new dependency branch based on an existing and adds the given dependency as a child.

func (*Init) BranchWithTimeout added in v0.60.0

func (ini *Init) BranchWithTimeout(timeout time.Duration, f func(ctx context.Context) (any, error)) *Init

BranchWithTimeout is same as Branch, but with a timeout.

func (*Init) Do

func (ini *Init) Do(ctx context.Context) (any, error)

Do initializes the entire dependency graph.

func (*Init) InitCount added in v0.92.2

func (ini *Init) InitCount() int

InitCount gets the number of this this Init has been initialized.

func (*Init) Reset

func (ini *Init) Reset()

Reset resets the current and all its dependencies.

Jump to

Keyboard shortcuts

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