package serverevents func CreateMetaDataFilter[T any](c IContext, metaDataSelector func(IContext) T, vgl func(a T, b T) bool) func(context IContext) bool { return func(context IContext) bool { metaA := metaDataSelector(c) metaB := metaDataSelector(context) return vgl(metaA, metaB) } } func MetadataAs[T any](context IContext, key string) (T, bool) { tmp, _ := context.Get(key) return ValueAs[T](tmp) } func ValueAs[T any](data any) (T, bool) { var v T if data == nil { return v, false } res, ok := data.(T) return res, ok }