github.com/sohaha/zlsgo@v1.7.13-0.20240501141223-10dd1a906f76/zreflect/bench_test.go (about)

     1  package zreflect_test
     2  
     3  import (
     4  	"reflect"
     5  	"testing"
     6  
     7  	"github.com/sohaha/zlsgo/zreflect"
     8  )
     9  
    10  func BenchmarkZReflect(b *testing.B) {
    11  	for i := 0; i < b.N; i++ {
    12  		v := zreflect.NewType(zreflect.Demo)
    13  		_ = v.NumMethod()
    14  	}
    15  }
    16  
    17  func BenchmarkZReflectRaw(b *testing.B) {
    18  	for i := 0; i < b.N; i++ {
    19  		v := zreflect.NewType(zreflect.Demo)
    20  		_ = v.Native().NumMethod()
    21  	}
    22  }
    23  
    24  func BenchmarkGReflect(b *testing.B) {
    25  	for i := 0; i < b.N; i++ {
    26  		v := reflect.TypeOf(zreflect.Demo)
    27  		_ = v.NumMethod()
    28  	}
    29  }