CostLimit enables cost tracking and sets configures program evaluation to exit early with a "runtime cost limit exceeded" error if the runtime cost exceeds the costLimit. The CostLimit is a metric that corresponds to the number and estimated expense of operations performed while evaluating an expres
(costLimit uint64)
| 823 | // The CostLimit is a metric that corresponds to the number and estimated expense of operations |
| 824 | // performed while evaluating an expression. It is indicative of CPU usage, not memory usage. |
| 825 | func CostLimit(costLimit uint64) ProgramOption { |
| 826 | return func(p *prog) (*prog, error) { |
| 827 | p.costLimit = &costLimit |
| 828 | p.evalOpts |= OptTrackCost |
| 829 | return p, nil |
| 830 | } |
| 831 | } |
| 832 | |
| 833 | func fieldToCELType(field protoreflect.FieldDescriptor) (*Type, error) { |
| 834 | if field.Kind() == protoreflect.MessageKind || field.Kind() == protoreflect.GroupKind { |
no outgoing calls