Directories
¶
Path | Synopsis |
---|---|
concurrency
|
|
background
Package background provides a way to run background tasks that run outside of a request/response cycle.
|
Package background provides a way to run background tasks that run outside of a request/response cycle. |
patterns/fan
Package fan provides a way to fan out data to be processed and then fan in the results onto an output channel.
|
Package fan provides a way to fan out data to be processed and then fan in the results onto an output channel. |
patterns/slices
Package slices provides concurrency types for operating on slices.
|
Package slices provides concurrency types for operating on slices. |
sync
Package sync is a replacement for the sync package in the Go standard library.
|
Package sync is a replacement for the sync package in the Go standard library. |
sync/internal/shardmap
Package shardmap is a re-done version of Josh Baker's shardmap package.
|
Package shardmap is a re-done version of Josh Baker's shardmap package. |
sync/reset
Package reset provides a validator to validate that your Reset() method on your type works as intended.
|
Package reset provides a validator to validate that your Reset() method on your type works as intended. |
worker
Package worker provides a Pool of goroutines where you can submit Jobs to be run by an exisiting goroutine instead of spinning off a new goroutine.
|
Package worker provides a Pool of goroutines where you can submit Jobs to be run by an exisiting goroutine instead of spinning off a new goroutine. |
worker/internal/heap
Package heap provides heap operations for any type that implements heap.Interface.
|
Package heap provides heap operations for any type that implements heap.Interface. |
Package context is a drop in replacement for the standard library's context package.
|
Package context is a drop in replacement for the standard library's context package. |
grpc
Package grpc provides getters and setters for gRPC data on our context object.
|
Package grpc provides getters and setters for gRPC data on our context object. |
env
|
|
detect
Package detect provides functions to detect the environment the application is running in.
|
Package detect provides functions to detect the environment the application is running in. |
Package errors provides an error type suitable for all errors returned by packages used to build services using the base/ set of packages.
|
Package errors provides an error type suitable for all errors returned by packages used to build services using the base/ set of packages. |
example
Package errors provides the standard library's errors package with additional functionality.
|
Package errors provides the standard library's errors package with additional functionality. |
example/proto
Package example is a reverse proxy.
|
Package example is a reverse proxy. |
Package init provides service initialization and close functions.
|
Package init provides service initialization and close functions. |
internal
|
|
context
Package context exists to avoid some import cycles.
|
Package context exists to avoid some import cycles. |
envvar
Package envvar holds the environment variables used by all base/ packages.
|
Package envvar holds the environment variables used by all base/ packages. |
errors
Package errors exists to avoid some import cycles.
|
Package errors exists to avoid some import cycles. |
retry
|
|
exponential
Package exponential provides an exponential backoff mechanism.
|
Package exponential provides an exponential backoff mechanism. |
exponential/helpers/grpc
Package gRPC provides an exponential.ErrTransformer that can be used to detect non-retriable errors for gRPC calls.
|
Package gRPC provides an exponential.ErrTransformer that can be used to detect non-retriable errors for gRPC calls. |
exponential/helpers/http
Package http provides an ErrTransformer for http.Client from the standard library.
|
Package http provides an ErrTransformer for http.Client from the standard library. |
rpc
|
|
grpc/server
Package grpc provides a wrapper around the google.golang.org/grpc package that integrates features into our gRPC servers.
|
Package grpc provides a wrapper around the google.golang.org/grpc package that integrates features into our gRPC servers. |
grpc/server/internal/interceptors/stream
Package stream
|
Package stream |
Package statemachine provides a simple routing state machine implementation.
|
Package statemachine provides a simple routing state machine implementation. |
telemetry
|
|
log
Package log is a replacement for the standard log package based on slog.
|
Package log is a replacement for the standard log package based on slog. |
log/adapters
Package adapters provides adapters for converting logging instances to the *slog.Logger type.
|
Package adapters provides adapters for converting logging instances to the *slog.Logger type. |
otel/metrics
Package metrics sets up the OpenTelemetry metrics provider and Prometheus exporter.
|
Package metrics sets up the OpenTelemetry metrics provider and Prometheus exporter. |
otel/trace
Package span provides access to OpenTelemetry Span objects for the purpose of logging events.
|
Package span provides access to OpenTelemetry Span objects for the purpose of logging events. |
otel/trace/sampler
Package sampler provides a sampler that can be used to sample calls based on a filter.
|
Package sampler provides a sampler that can be used to sample calls based on a filter. |
otel/trace/sampler/filters/grpc
Package grpc contains a filter for use in our sampler.Filtered sampler that will match gRPC calls based on metadata.
|
Package grpc contains a filter for use in our sampler.Filtered sampler that will match gRPC calls based on metadata. |
otel/trace/span
Package span provides methods to create new spans and get existing spans.
|
Package span provides methods to create new spans and get existing spans. |
values
|
|
generics/promises
Package promises provides generic types for promises and response objects that are useful for various asynchronous operations.
|
Package promises provides generic types for promises and response objects that are useful for various asynchronous operations. |
generics/sets
Package sets provides a generic set type.
|
Package sets provides a generic set type. |
immutable
Package immutable is a utility package that is used by the immutable generator and holds types that provide immutability for standard Go types.
|
Package immutable is a utility package that is used by the immutable generator and holds types that provide immutability for standard Go types. |
immutable/generator/immutable
Package immutable contains types and functions that can be used to generate immutable types from existing Go struct types.
|
Package immutable contains types and functions that can be used to generate immutable types from existing Go struct types. |
immutable/internal/immutable
Package immutable provides some immutable types for slices and maps.
|
Package immutable provides some immutable types for slices and maps. |
immutable/unsafe
Package unsafe provides functions that allow you to bypass the immutability restrictions on the immutable package.
|
Package unsafe provides functions that allow you to bypass the immutability restrictions on the immutable package. |
isset
Package isset provides a way to provide basic values that can be checked if they were set instead of using pointers to basic types which are costly on the garbage collector.
|
Package isset provides a way to provide basic values that can be checked if they were set instead of using pointers to basic types which are costly on the garbage collector. |
sizes
Package sizes contains constants for various data sizes that are commonly used.
|
Package sizes contains constants for various data sizes that are commonly used. |
Click to show internal directories.
Click to hide internal directories.