github.com/fananchong/cstruct-go@v0.0.0-20220616060855-b65d9a2f2e17/benchmarks/type_test.go (about)

     1  package benchmarks
     2  
     3  import (
     4  	"fmt"
     5  	"reflect"
     6  	"testing"
     7  )
     8  
     9  type TestTypeA struct {
    10  	a int
    11  	b float64
    12  }
    13  
    14  func Benchmark_sprintf(b *testing.B) {
    15  	a := TestTypeA{}
    16  	t := ""
    17  	for i := 0; i < b.N; i++ {
    18  		t = fmt.Sprintf("%T", a)
    19  	}
    20  	b.Log(t)
    21  }
    22  
    23  func Benchmark_reflect(b *testing.B) {
    24  	a := TestTypeA{}
    25  	t := ""
    26  	for i := 0; i < b.N; i++ {
    27  		t = reflect.TypeOf(a).String()
    28  	}
    29  	b.Log(t)
    30  }