Documentation ¶
Overview ¶
Package types contains types shared between packages in Hugo.
Package types contains types shared between packages in Hugo.
Index ¶
- Variables
- func IsNil(v any) bool
- func ToDuration(v any) time.Duration
- func ToDurationE(v any) (time.Duration, error)
- func ToString(v any) string
- func ToStringE(v any) (string, error)
- func ToStringSlicePreserveString(v any) []string
- func ToStringSlicePreserveStringE(v any) ([]string, error)
- func TypeToString(v any) (string, bool)
- type DevMarker
- type EvictingStringQueue
- type KeyValue
- type KeyValueStr
- type KeyValues
- type RLocker
- type Zeroer
Constants ¶
This section is empty.
Variables ¶
var InvocationCounter atomic.Int64
This is only used for debugging purposes.
Functions ¶
func ToDuration ¶
ToDuration converts v to time.Duration. See ToDurationE if you need to handle errors.
func ToDurationE ¶
ToDurationE converts v to time.Duration.
func ToStringSlicePreserveString ¶
ToStringSlicePreserveString is the same as ToStringSlicePreserveStringE, but it never fails.
func ToStringSlicePreserveStringE ¶
ToStringSlicePreserveStringE converts v to a string slice. If v is a string, it will be wrapped in a string slice.
func TypeToString ¶
TypeToString converts v to a string if it's a valid string type. Note that this will not try to convert numeric values etc., use ToString for that.
Types ¶
type DevMarker ¶
type DevMarker interface {
DevOnly()
}
DevMarker is a marker interface for types that should only be used during development.
type EvictingStringQueue ¶
type EvictingStringQueue struct {
// contains filtered or unexported fields
}
EvictingStringQueue is a queue which automatically evicts elements from the head of the queue when attempting to add new elements onto the queue and it is full. This queue orders elements LIFO (last-in-first-out). It throws away duplicates. Note: This queue currently does not contain any remove (poll etc.) methods.
func NewEvictingStringQueue ¶
func NewEvictingStringQueue(size int) *EvictingStringQueue
NewEvictingStringQueue creates a new queue with the given size.
func (*EvictingStringQueue) Add ¶
func (q *EvictingStringQueue) Add(v string)
Add adds a new string to the tail of the queue if it's not already there.
func (*EvictingStringQueue) Contains ¶
func (q *EvictingStringQueue) Contains(v string) bool
Contains returns whether the queue contains v.
func (*EvictingStringQueue) Peek ¶
func (q *EvictingStringQueue) Peek() string
Peek looks at the last element added to the queue.
func (*EvictingStringQueue) PeekAll ¶
func (q *EvictingStringQueue) PeekAll() []string
PeekAll looks at all the elements in the queue, with the newest first.
func (*EvictingStringQueue) PeekAllSet ¶
func (q *EvictingStringQueue) PeekAllSet() map[string]bool
PeekAllSet returns PeekAll as a set.
type KeyValueStr ¶
KeyValueStr is a string tuple.
type KeyValues ¶
KeyValues holds an key and a slice of values.
func NewKeyValuesStrings ¶
NewKeyValuesStrings takes a given key and slice of values and returns a new KeyValues struct.