utils

package
v1.2.1 Latest Latest
Warning

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

Go to latest
Published: Jun 17, 2024 License: Apache-2.0 Imports: 11 Imported by: 3

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DebugJSONAttributes added in v0.3.0

func DebugJSONAttributes(data map[string]any, isDebug bool) []attribute.KeyValue

DebugJSONAttributes create OpenTelemetry attributes with JSON data. They are only visible on debug mode

func DecodeArbitraryJSONPtrSlice added in v0.6.0

func DecodeArbitraryJSONPtrSlice(value any) ([]*any, error)

DecodeArbitraryJSONPtrSlice decodes an arbitrary json pointer slice from object by key

func DecodeArbitraryJSONSlice added in v0.6.0

func DecodeArbitraryJSONSlice(value any) ([]any, error)

DecodeArbitraryJSONSlice decodes an arbitrary json slice from object by key

func DecodeBoolean

func DecodeBoolean(value any) (bool, error)

DecodeBoolean tries to convert an unknown value to a bool value

func DecodeBooleanPtrSlice added in v0.6.0

func DecodeBooleanPtrSlice(value any) ([]*bool, error)

DecodeBooleanPtrSlice decodes a boolean pointer slice from an unknown value

func DecodeBooleanSlice added in v0.6.0

func DecodeBooleanSlice(value any) ([]bool, error)

DecodeBooleanSlice decodes a boolean slice from an unknown value

func DecodeDateTime

func DecodeDateTime(value any) (time.Time, error)

DecodeDateTime tries to convert an unknown value to a time.Time value

func DecodeDateTimePtrSlice added in v0.6.0

func DecodeDateTimePtrSlice(value any) ([]*time.Time, error)

DecodeDateTimePtrSlice tries to convert an unknown value to a time.Time pointer slice

func DecodeDateTimeSlice added in v0.6.0

func DecodeDateTimeSlice(value any) ([]time.Time, error)

DecodeDateTimeSlice tries to convert an unknown value to a time.Time slice

func DecodeDuration

func DecodeDuration(value any) (time.Duration, error)

DecodeDuration tries to convert an unknown value to a duration value

func DecodeFloat

func DecodeFloat[T float32 | float64](value any) (T, error)

DecodeFloat tries to convert an unknown value to a float value

func DecodeFloatPtrSlice added in v0.6.0

func DecodeFloatPtrSlice[T float32 | float64](value any) ([]*T, error)

DecodeFloatSlice decodes a float pointer slice from an unknown value

func DecodeFloatSlice added in v0.6.0

func DecodeFloatSlice[T float32 | float64](value any) ([]T, error)

DecodeFloatSlice decodes a float slice from an unknown value

func DecodeInt

func DecodeInt[T int | int8 | int16 | int32 | int64](value any) (T, error)

DecodeInt tries to convert an unknown value to a not-null integer value

func DecodeIntPtrSlice added in v0.6.0

func DecodeIntPtrSlice[T int | int8 | int16 | int32 | int64](value any) ([]*T, error)

DecodeIntPtrSlice decodes an integer slice from an unknown value

func DecodeIntSlice added in v0.6.0

func DecodeIntSlice[T int | int8 | int16 | int32 | int64](value any) ([]T, error)

DecodeIntSlice decodes an integer slice from an unknown value

func DecodeNullableArbitraryJSONPtrSlice added in v0.6.0

func DecodeNullableArbitraryJSONPtrSlice(value any) (*[]*any, error)

DecodeNullableArbitraryJSONPtrSlice decodes a nullable arbitrary json pointer slice from object by key

func DecodeNullableArbitraryJSONSlice added in v0.6.0

func DecodeNullableArbitraryJSONSlice(value any) (*[]any, error)

DecodeNullableArbitraryJSONSlice decodes a nullable arbitrary json slice from object by key

func DecodeNullableBoolean

func DecodeNullableBoolean(value any) (*bool, error)

DecodeNullableBoolean tries to convert an unknown value to a bool pointer

func DecodeNullableBooleanPtrSlice added in v0.6.0

func DecodeNullableBooleanPtrSlice(value any) (*[]*bool, error)

DecodeNullableBooleanPtrSlice decodes a boolean pointer slice from an unknown value

func DecodeNullableBooleanSlice added in v0.6.0

func DecodeNullableBooleanSlice(value any) (*[]bool, error)

DecodeNullableBooleanSlice decodes a nullable boolean slice from an unknown value

func DecodeNullableDateTime

func DecodeNullableDateTime(value any) (*time.Time, error)

DecodeNullableDateTime tries to convert an unknown value to a time.Time pointer

func DecodeNullableDateTimePtrSlice added in v0.6.0

func DecodeNullableDateTimePtrSlice(value any) (*[]*time.Time, error)

DecodeNullableDateTimePtrSlice tries to convert an unknown value to a nullable time.Time pointer slice

func DecodeNullableDateTimeSlice added in v0.6.0

func DecodeNullableDateTimeSlice(value any) (*[]time.Time, error)

DecodeNullableDateTimeSlice tries to convert an unknown value to a nullable time.Time slice

func DecodeNullableDuration

func DecodeNullableDuration(value any) (*time.Duration, error)

DecodeNullableDuration tries to convert an unknown value to a duration pointer

func DecodeNullableFloat

func DecodeNullableFloat[T float32 | float64](value any) (*T, error)

DecodeNullableFloat tries to convert an unknown value to a float pointer

func DecodeNullableFloatPtrSlice added in v0.6.0

func DecodeNullableFloatPtrSlice[T float32 | float64](value any) (*[]*T, error)

DecodeNullableFloatPtrSlice decodes a float pointer slice from an unknown value

func DecodeNullableFloatSlice added in v0.6.0

func DecodeNullableFloatSlice[T float32 | float64](value any) (*[]T, error)

DecodeNullableFloatSlice decodes a float slice from an unknown value

func DecodeNullableInt

func DecodeNullableInt[T int | int8 | int16 | int32 | int64](value any) (*T, error)

DecodeNullableInt tries to convert an unknown value to a nullable integer

func DecodeNullableIntPtrSlice added in v0.6.0

func DecodeNullableIntPtrSlice[T int | int8 | int16 | int32 | int64](value any) (*[]*T, error)

DecodeNullableIntPtrSlice decodes an integer pointer slice from an unknown value

func DecodeNullableIntSlice added in v0.6.0

func DecodeNullableIntSlice[T int | int8 | int16 | int32 | int64](value any) (*[]T, error)

DecodeNullableIntSlice decodes an integer pointer slice from an unknown value

func DecodeNullableRawJSON added in v0.6.0

func DecodeNullableRawJSON(value any) (*json.RawMessage, error)

DecodeNullableRawJSON decodes a raw json.RawMessage pointer from object by key

func DecodeNullableRawJSONPtrSlice added in v0.6.0

func DecodeNullableRawJSONPtrSlice(value any) (*[]*json.RawMessage, error)

DecodeNullableRawJSONPtrSlice decodes a nullable json.RawMessage pointer slice from object by key

func DecodeNullableRawJSONSlice added in v0.6.0

func DecodeNullableRawJSONSlice(value any) (*[]json.RawMessage, error)

DecodeNullableRawJSONSlice decodes a nullable json.RawMessage slice from object by key

func DecodeNullableString

func DecodeNullableString(value any) (*string, error)

DecodeNullableString tries to convert an unknown value to a string pointer

func DecodeNullableStringPtrSlice added in v0.6.0

func DecodeNullableStringPtrSlice(value any) (*[]*string, error)

DecodeNullableStringSlice decodes a nullable string slice from an unknown value

func DecodeNullableStringSlice added in v0.6.0

func DecodeNullableStringSlice(value any) (*[]string, error)

DecodeNullableStringSlice decodes a nullable string slice from an unknown value

func DecodeNullableUUID added in v0.5.0

func DecodeNullableUUID(value any) (*uuid.UUID, error)

DecodeNullableUUID decodes UUID pointer from string or bytes

func DecodeNullableUUIDPtrSlice added in v0.6.0

func DecodeNullableUUIDPtrSlice(value any) (*[]*uuid.UUID, error)

DecodeNullableUUIDPtrSlice decodes UUID pointer slice from array string

func DecodeNullableUUIDSlice added in v0.6.0

func DecodeNullableUUIDSlice(value any) (*[]uuid.UUID, error)

DecodeNullableUUIDSlice decodes a nullable UUID slice from array string

func DecodeNullableUint

func DecodeNullableUint[T uint | uint8 | uint16 | uint32 | uint64](value any) (*T, error)

DecodeNullableUint tries to convert an unknown value to a nullable unsigned integer pointer

func DecodeNullableUintPtrSlice added in v0.6.0

func DecodeNullableUintPtrSlice[T uint | uint8 | uint16 | uint32 | uint64](value any) (*[]*T, error)

DecodeNullableUintPtrSlice decodes an unsigned integer pointer slice from an unknown value

func DecodeNullableUintSlice added in v0.6.0

func DecodeNullableUintSlice[T uint | uint8 | uint16 | uint32 | uint64](value any) (*[]T, error)

DecodeNullableUintSlice decodes an unsigned integer slice from an unknown value

func DecodeRawJSONPtrSlice added in v0.6.0

func DecodeRawJSONPtrSlice(value any) ([]*json.RawMessage, error)

DecodeRawJSONPtrSlice decodes a json.RawMessage pointer slice from object by key

func DecodeRawJSONSlice added in v0.6.0

func DecodeRawJSONSlice(value any) ([]json.RawMessage, error)

DecodeRawJSONSlice decodes a json.RawMessage slice from object by key

func DecodeString

func DecodeString(value any) (string, error)

DecodeString tries to convert an unknown value to a string value

func DecodeStringPtrSlice added in v0.6.0

func DecodeStringPtrSlice(value any) ([]*string, error)

DecodeStringPtrSlice decodes a string pointer slice from an unknown value

func DecodeStringSlice added in v0.6.0

func DecodeStringSlice(value any) ([]string, error)

DecodeStringSlice decodes a string slice from an unknown value

func DecodeUUID added in v0.5.0

func DecodeUUID(value any) (uuid.UUID, error)

DecodeUUID decodes UUID from string

func DecodeUUIDPtrSlice added in v0.6.0

func DecodeUUIDPtrSlice(value any) ([]*uuid.UUID, error)

DecodeUUIDPtrSlice decodes UUID slice from array string

func DecodeUUIDSlice added in v0.6.0

func DecodeUUIDSlice(value any) ([]uuid.UUID, error)

DecodeUUIDSlice decodes UUID slice from array string

func DecodeUint

func DecodeUint[T uint | uint8 | uint16 | uint32 | uint64](value any) (T, error)

DecodeUint tries to convert an unknown value to an unsigned integer value

func DecodeUintPtrSlice added in v0.6.0

func DecodeUintPtrSlice[T uint | uint8 | uint16 | uint32 | uint64](value any) ([]*T, error)

DecodeUintSlice decodes an unsigned integer pointer slice from an unknown value

func DecodeUintSlice added in v0.6.0

func DecodeUintSlice[T uint | uint8 | uint16 | uint32 | uint64](value any) ([]T, error)

DecodeUintSlice decodes an unsigned integer slice from an unknown value

func EncodeMap

func EncodeMap[T MapEncoder](input T) map[string]any

EncodeMap encodes an object to a map[string]any, using json tag to convert object keys

func EncodeMaps

func EncodeMaps[T MapEncoder](inputs []T) []map[string]any

EncodeMaps encode objects to a slice of map[string]any, using json tag to convert object keys

func EncodeNullableMaps

func EncodeNullableMaps[T MapEncoder](inputs *[]T) []map[string]any

EncodeNullableMaps encode objects to a slice of map[string]any, using json tag to convert object keys

func EncodeObject

func EncodeObject(input any) (map[string]any, error)

EncodeObject encodes an unknown type to a map[string]any, using json tag to convert object keys

func EncodeObjectSlice

func EncodeObjectSlice[T any](input []T) ([]map[string]any, error)

EncodeObjectSlice encodes array of unknown type to map[string]any slice, using json tag to convert object keys

func EncodeObjectWithColumnSelection

func EncodeObjectWithColumnSelection[T any](fields map[string]schema.Field, data T) (map[string]any, error)

EncodeObjectWithColumnSelection encodes an object with column fields selection without relationship

func EncodeObjects

func EncodeObjects(input any) ([]map[string]any, error)

EncodeObjects encodes an object rows to a slice of map[string]any, using json tag to convert object keys

func EncodeObjectsWithColumnSelection

func EncodeObjectsWithColumnSelection[T any](fields map[string]schema.Field, data []T) ([]map[string]any, error)

EncodeObjectsWithColumnSelection encodes objects with column fields selection without relationship

func EvalFunctionSelectionFieldValue added in v0.1.3

func EvalFunctionSelectionFieldValue(request *schema.QueryRequest) (schema.NestedField, error)

EvalFunctionSelectionFieldValue evaluates the __value field in a function query According to the NDC spec, selection fields of the function type must follow this structure:

{
	"fields": {
		"__value": {
			"type": "column",
			"column": "__value",
			"fields": {
				"type": "object",
				"fields": {
					"fieldA": { "type": "column", "column": "fieldA", "fields": null }
				} // or null
			}
		}
	}
}

func EvalNestedColumnArray

func EvalNestedColumnArray(fields *schema.NestedArray, value any) (any, error)

EvalNestedColumnArray evaluate and prune nested fields from array without relationship

func EvalNestedColumnArrayIntoSlice

func EvalNestedColumnArrayIntoSlice[T any](fields *schema.NestedArray, value []T) (any, error)

EvalNestedColumnArrayIntoSlice evaluate and prune nested fields from array without relationship

func EvalNestedColumnFields

func EvalNestedColumnFields(fields schema.NestedField, value any) (any, error)

EvalNestedColumnFields evaluate and prune nested fields without relationship

func EvalNestedColumnObject

func EvalNestedColumnObject(fields *schema.NestedObject, value any) (any, error)

EvalNestedColumnObject evaluate and prune nested fields from an object without relationship

func EvalObjectWithColumnSelection

func EvalObjectWithColumnSelection(fields map[string]schema.Field, data map[string]any) (map[string]any, error)

EvalObjectWithColumnSelection evaluate and prune column fields without relationship

func EvalObjectsWithColumnSelection

func EvalObjectsWithColumnSelection(fields map[string]schema.Field, data []map[string]any) ([]map[string]any, error)

EvalObjectsWithColumnSelection evaluate and prune column fields of array objects without relationship

func GetAny

func GetAny(object map[string]any, key string) (any, bool)

GetAny get an unknown value from object by key

func GetArbitraryJSON added in v0.5.3

func GetArbitraryJSON(object map[string]any, key string) (any, error)

GetArbitraryJSON get an arbitrary json value from object by key

func GetArbitraryJSONPtrSlice added in v0.6.0

func GetArbitraryJSONPtrSlice(object map[string]any, key string) ([]*any, error)

GetArbitraryJSONPtrSlice get an arbitrary json pointer slice from object by key

func GetArbitraryJSONSlice added in v0.6.0

func GetArbitraryJSONSlice(object map[string]any, key string) ([]any, error)

GetArbitraryJSON get an arbitrary json slice from object by key

func GetBool deprecated

func GetBool(object map[string]any, key string) (bool, error)

GetBool get a bool pointer from object by key

Deprecated: use GetBoolean instead

func GetBoolean added in v0.6.0

func GetBoolean(object map[string]any, key string) (bool, error)

GetBoolean get a bool value from object by key

func GetBooleanPtrSlice added in v0.6.0

func GetBooleanPtrSlice(object map[string]any, key string) ([]*bool, error)

GetBooleanPtrSlice get a boolean pointer slice value from object by key

func GetBooleanSlice added in v0.6.0

func GetBooleanSlice(object map[string]any, key string) ([]bool, error)

GetBooleanSlice get a boolean slice value from object by key

func GetDateTime

func GetDateTime(object map[string]any, key string) (time.Time, error)

GetDateTime get a time.Time value from object by key

func GetDateTimePtrSlice added in v0.6.0

func GetDateTimePtrSlice(object map[string]any, key string) ([]*time.Time, error)

GetDateTimePtrSlice get a time.Time pointer slice from object by key

func GetDateTimeSlice added in v0.6.0

func GetDateTimeSlice(object map[string]any, key string) ([]time.Time, error)

GetDateTimeSlice get a time.Time slice from object by key

func GetDefault added in v0.3.0

func GetDefault[T comparable](value T, defaultValue T) T

GetDefault returns the value or default one if value is empty

func GetDefaultPtr added in v0.3.0

func GetDefaultPtr[T any](value *T, defaultValue *T) *T

GetDefaultPtr returns the first pointer or default one if GetDefaultPtr is nil

func GetDefaultValuePtr added in v0.3.0

func GetDefaultValuePtr[T comparable](value *T, defaultValue T) T

GetDefaultValuePtr return the value of pointer or default one if the value of pointer is null or empty

func GetDuration

func GetDuration(object map[string]any, key string) (time.Duration, error)

GetDuration get a time.Duration value from object by key

func GetFloat

func GetFloat[T float32 | float64](object map[string]any, key string) (T, error)

GetFloat get a float value from object by key

func GetFloatPtrSlice added in v0.6.0

func GetFloatPtrSlice[T float32 | float64](object map[string]any, key string) ([]*T, error)

GetFloatPtrSlice get a float slice from object by key

func GetFloatSlice added in v0.6.0

func GetFloatSlice[T float32 | float64](object map[string]any, key string) ([]T, error)

GetFloatSlice get a float slice from object by key

func GetInt

func GetInt[T int | int8 | int16 | int32 | int64](object map[string]any, key string) (T, error)

GetInt get an integer value from object by key

func GetIntPtrSlice added in v0.6.0

func GetIntPtrSlice[T int | int8 | int16 | int32 | int64](object map[string]any, key string) ([]*T, error)

GetIntPtrSlice get an integer slice from object by key

func GetIntSlice added in v0.6.0

func GetIntSlice[T int | int8 | int16 | int32 | int64](object map[string]any, key string) ([]T, error)

GetIntSlice get an integer slice from object by key

func GetNullableArbitraryJSON added in v0.5.3

func GetNullableArbitraryJSON(object map[string]any, key string) (*any, error)

GetNullableArbitraryJSON get an arbitrary json pointer from object by key

func GetNullableArbitraryJSONPtrSlice added in v0.6.0

func GetNullableArbitraryJSONPtrSlice(object map[string]any, key string) (*[]*any, error)

GetNullableArbitraryJSONPtrSlice get a nullable arbitrary json pointer slice from object by key

func GetNullableArbitraryJSONSlice added in v0.6.0

func GetNullableArbitraryJSONSlice(object map[string]any, key string) (*[]any, error)

GetNullableArbitraryJSONSlice get a nullable arbitrary json slice from object by key

func GetNullableBool deprecated

func GetNullableBool(object map[string]any, key string) (*bool, error)

GetNullableBool get a bool pointer from object by key

Deprecated: use GetNullableBoolean instead

func GetNullableBoolean added in v0.6.0

func GetNullableBoolean(object map[string]any, key string) (*bool, error)

GetNullableBoolean get a bool pointer from object by key

func GetNullableBooleanPtrSlice added in v0.6.0

func GetNullableBooleanPtrSlice(object map[string]any, key string) (*[]*bool, error)

GetNullableBooleanPtrSlice get a nullable boolean slice from object by key

func GetNullableBooleanSlice added in v0.6.0

func GetNullableBooleanSlice(object map[string]any, key string) (*[]bool, error)

GetNullableBooleanSlice get a nullable boolean slice from object by key

func GetNullableDateTime

func GetNullableDateTime(object map[string]any, key string) (*time.Time, error)

GetNullableDateTime get a time.Time pointer from object by key

func GetNullableDateTimePtrSlice added in v0.6.0

func GetNullableDateTimePtrSlice(object map[string]any, key string) (*[]*time.Time, error)

GetNullableDateTimePtrSlice get a nullable time.Time pointer slice from object by key

func GetNullableDateTimeSlice added in v0.6.0

func GetNullableDateTimeSlice(object map[string]any, key string) (*[]time.Time, error)

GetNullableDateTimeSlice get a nullable time.Time slice from object by key

func GetNullableDuration

func GetNullableDuration(object map[string]any, key string) (*time.Duration, error)

GetNullableDuration get a time.Duration pointer from object by key

func GetNullableFloat

func GetNullableFloat[T float32 | float64](object map[string]any, key string) (*T, error)

GetNullableFloat get a float pointer from object by key

func GetNullableFloatPtrSlice added in v0.6.0

func GetNullableFloatPtrSlice[T float32 | float64](object map[string]any, key string) (*[]*T, error)

GetNullableFloatPtrSlice get a float pointer slice from object by key

func GetNullableFloatSlice added in v0.6.0

func GetNullableFloatSlice[T float32 | float64](object map[string]any, key string) (*[]T, error)

GetNullableFloatSlice get a float pointer slice from object by key

func GetNullableInt

func GetNullableInt[T int | int8 | int16 | int32 | int64](object map[string]any, key string) (*T, error)

GetNullableInt get an integer pointer from object by key

func GetNullableIntPtrSlice added in v0.6.0

func GetNullableIntPtrSlice[T int | int8 | int16 | int32 | int64](object map[string]any, key string) (*[]*T, error)

GetNullableIntPtrSlice get an integer pointer slice from object by key

func GetNullableIntSlice added in v0.6.0

func GetNullableIntSlice[T int | int8 | int16 | int32 | int64](object map[string]any, key string) (*[]T, error)

GetNullableIntSlice get an integer pointer slice from object by key

func GetNullableObjectRawJSON deprecated added in v0.5.3

func GetNullableObjectRawJSON(object map[string]any, key string) (*json.RawMessage, error)

GetNullableObjectRawJSON get a raw json.RawMessage pointer from object by key

Deprecated: use GetNullableRawJSON instead

func GetNullableObjectUUID deprecated added in v0.5.0

func GetNullableObjectUUID(object map[string]any, key string) (*uuid.UUID, error)

GetNullableObjectUUID get an UUID pointer from object by key

Deprecated: use GetNullableUUID instead

func GetNullableRawJSON added in v0.6.0

func GetNullableRawJSON(object map[string]any, key string) (*json.RawMessage, error)

GetNullableRawJSON gets a raw json.RawMessage pointer from object by key

func GetNullableRawJSONPtrSlice added in v0.6.0

func GetNullableRawJSONPtrSlice(object map[string]any, key string) (*[]*json.RawMessage, error)

GetNullableRawJSONPtrSlice get a nullable json.RawMessage pointer slice from object by key

func GetNullableRawJSONSlice added in v0.6.0

func GetNullableRawJSONSlice(object map[string]any, key string) (*[]json.RawMessage, error)

GetNullableRawJSONSlice get a nullable json.RawMessage slice from object by key

func GetNullableString

func GetNullableString(object map[string]any, key string) (*string, error)

GetNullableString get a string pointer from object by key

func GetNullableStringPtrSlice added in v0.6.0

func GetNullableStringPtrSlice(object map[string]any, key string) (*[]*string, error)

GetNullableStringPtrSlice get a nullable string pointer slice from object by key

func GetNullableStringSlice added in v0.6.0

func GetNullableStringSlice(object map[string]any, key string) (*[]string, error)

GetNullableStringSlice get a string pointer slice from object by key

func GetNullableUUID added in v0.6.0

func GetNullableUUID(object map[string]any, key string) (*uuid.UUID, error)

GetNullableUUID get an UUID pointer from object by key

func GetNullableUUIDPtrSlice added in v0.6.0

func GetNullableUUIDPtrSlice(object map[string]any, key string) (*[]*uuid.UUID, error)

GetNullableUUIDPtrSlice get an UUID pointer slice from object by key

func GetNullableUUIDSlice added in v0.6.0

func GetNullableUUIDSlice(object map[string]any, key string) (*[]uuid.UUID, error)

GetNullableUUIDSlice get an UUID pointer slice from object by key

func GetNullableUint

func GetNullableUint[T uint | uint8 | uint16 | uint32 | uint64](object map[string]any, key string) (*T, error)

GetNullableUint get an unsigned integer pointer from object by key

func GetNullableUintPtrSlice added in v0.6.0

func GetNullableUintPtrSlice[T uint | uint8 | uint16 | uint32 | uint64](object map[string]any, key string) (*[]*T, error)

GetNullableUintPtrSlice get an unsigned integer pointer slice from object by key

func GetNullableUintSlice added in v0.6.0

func GetNullableUintSlice[T uint | uint8 | uint16 | uint32 | uint64](object map[string]any, key string) (*[]T, error)

GetNullableUintSlice get an unsigned integer pointer slice from object by key

func GetObjectRawJSON deprecated added in v0.5.3

func GetObjectRawJSON(object map[string]any, key string) (json.RawMessage, error)

GetObjectRawJSON get a raw json.RawMessage value from object by key

Deprecated: use GetRawJSON instead

func GetObjectUUID deprecated added in v0.5.0

func GetObjectUUID(object map[string]any, key string) (uuid.UUID, error)

GetObjectUUID get an UUID value from object by key

Deprecated: use GetUUID instead

func GetRawJSON added in v0.6.0

func GetRawJSON(object map[string]any, key string) (json.RawMessage, error)

GetRawJSON get a raw json.RawMessage value from object by key

func GetRawJSONPtrSlice added in v0.6.0

func GetRawJSONPtrSlice(object map[string]any, key string) ([]*json.RawMessage, error)

GetRawJSONPtrSlice get a json.RawMessage pointer slice from object by key

func GetRawJSONSlice added in v0.6.0

func GetRawJSONSlice(object map[string]any, key string) ([]json.RawMessage, error)

GetRawJSONSlice get a raw json.RawMessage slice from object by key

func GetString

func GetString(object map[string]any, key string) (string, error)

GetString get a string value from object by key

func GetStringPtrSlice added in v0.6.0

func GetStringPtrSlice(object map[string]any, key string) ([]*string, error)

GetStringPtrSlice get a string pointer slice value from object by key

func GetStringSlice added in v0.6.0

func GetStringSlice(object map[string]any, key string) ([]string, error)

GetStringSlice get a string slice value from object by key

func GetUUID added in v0.6.0

func GetUUID(object map[string]any, key string) (uuid.UUID, error)

GetUUID get an UUID value from object by key

func GetUUIDPtrSlice added in v0.6.0

func GetUUIDPtrSlice(object map[string]any, key string) ([]*uuid.UUID, error)

GetUUIDPtrSlice get an UUID slice from object by key

func GetUUIDSlice added in v0.6.0

func GetUUIDSlice(object map[string]any, key string) ([]uuid.UUID, error)

GetUUIDSlice get an UUID slice from object by key

func GetUint

func GetUint[T uint | uint8 | uint16 | uint32 | uint64](object map[string]any, key string) (T, error)

GetUint get an unsigned integer value from object by key

func GetUintPtrSlice added in v0.6.0

func GetUintPtrSlice[T uint | uint8 | uint16 | uint32 | uint64](object map[string]any, key string) ([]*T, error)

GetUintPtrSlice get an unsigned integer slice from object by key

func GetUintSlice added in v0.6.0

func GetUintSlice[T uint | uint8 | uint16 | uint32 | uint64](object map[string]any, key string) ([]T, error)

GetUintSlice get an unsigned integer slice from object by key

func IsNil

func IsNil(value any) bool

IsNil a safe function to check null value

func JSONAttribute added in v0.3.0

func JSONAttribute(key string, data any) attribute.KeyValue

JSONAttribute creates a OpenTelemetry attribute with JSON data

func PointersToValues added in v0.6.0

func PointersToValues[T any](input []*T) ([]T, error)

PointersToValues converts the pointer slice to value slice

func ResolveArgumentVariables

func ResolveArgumentVariables(arguments map[string]schema.Argument, variables map[string]any) (map[string]any, error)

ResolveArgumentVariables resolve variables in arguments if exist

func ToPtr

func ToPtr[V any](value V) *V

ToPtr converts a value to its pointer

func ToPtrs added in v0.6.0

func ToPtrs[T any](input []T) []*T

ToPtrs converts the value slice to pointer slice

func UnwrapPointerFromAny added in v0.6.0

func UnwrapPointerFromAny(value any) (any, bool)

UnwrapPointerFromAny unwraps pointers from the input any type

func UnwrapPointerFromReflectValue added in v0.6.0

func UnwrapPointerFromReflectValue(reflectValue reflect.Value) (reflect.Value, bool)

UnwrapPointerFromReflectValue unwraps pointers from the reflect value

Types

type Decoder added in v0.1.1

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

Decoder is a wrapper of mapstructure decoder

func NewDecoder added in v0.1.1

func NewDecoder(decodeHooks ...mapstructure.DecodeHookFunc) *Decoder

NewDecoder creates a Decoder instance

func (Decoder) DecodeNullableObjectValue added in v0.1.1

func (d Decoder) DecodeNullableObjectValue(target any, object map[string]any, key string) error

DecodeNullableObjectValue get and decode a nullable value from object by key

func (Decoder) DecodeNullableValue added in v0.1.1

func (d Decoder) DecodeNullableValue(target any, value any) error

DecodeNullableValue tries to convert and set an unknown value into the target, fallback to mapstructure decoder

func (Decoder) DecodeObjectValue added in v0.1.1

func (d Decoder) DecodeObjectValue(target any, object map[string]any, key string) error

DecodeObjectValue get and decode a value from object by key

func (Decoder) DecodeValue added in v0.1.1

func (d Decoder) DecodeValue(target any, value any) error

DecodeValue tries to convert and set an unknown value into the target, the value must not be null fallback to mapstructure decoder

type MapEncoder

type MapEncoder interface {
	ToMap() map[string]any
}

MapEncoder abstracts a type with the ToMap method to encode type to map

type ObjectDecoder

type ObjectDecoder interface {
	FromValue(value map[string]any) error
}

ObjectDecoder abstracts a type with the FromValue method to decode an object value

type Scalar

type Scalar interface {
	ScalarName() string
}

Scalar abstracts a scalar interface to determine when evaluating

type ValueDecoder

type ValueDecoder interface {
	FromValue(value any) error
}

ValueDecoder abstracts a type with the FromValue method to decode any value

Jump to

Keyboard shortcuts

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