MCPcopy
hub / github.com/expr-lang/expr / Benchmark_largeNestedStructAccess

Function Benchmark_largeNestedStructAccess

bench_test.go:455–478  ·  view source on GitHub ↗
(b *testing.B)

Source from the content-addressed store, hash-verified

453}
454
455func Benchmark_largeNestedStructAccess(b *testing.B) {
456 type Env struct {
457 Inner struct {
458 Data [1024 * 1024 * 10]byte
459 Field int
460 }
461 }
462
463 program, err := expr.Compile(`Inner.Field > 0 && Inner.Field > 1 && Inner.Field < 99`, expr.Env(Env{}))
464 require.NoError(b, err)
465
466 env := Env{}
467 env.Inner.Field = 21
468
469 var out any
470 b.ResetTimer()
471 for n := 0; n < b.N; n++ {
472 out, err = vm.Run(program, &env)
473 }
474 b.StopTimer()
475
476 require.NoError(b, err)
477 require.True(b, out.(bool))
478}
479
480func Benchmark_largeNestedArrayAccess(b *testing.B) {
481 type Env struct {

Callers

nothing calls this directly

Calls 5

CompileFunction · 0.92
EnvStruct · 0.92
NoErrorFunction · 0.92
RunFunction · 0.92
TrueFunction · 0.92

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…