github.com/tencent/goom@v1.0.1/test/fake.go (about)

     1  package test
     2  
     3  // Fake 导出结构体
     4  type Fake struct{}
     5  
     6  // Call 普通方法
     7  //
     8  //go:noinline
     9  func (f *Fake) Call(i int) int {
    10  	if i < -10000 {
    11  		dummy()
    12  	}
    13  	return f.call(i)
    14  }
    15  
    16  // call 未导出方法
    17  //
    18  //go:noinline
    19  func (f *Fake) call(i int) int {
    20  	if i < -10000 {
    21  		dummy()
    22  	}
    23  	return i
    24  }
    25  
    26  // Invokecall 测试调用未导出函数
    27  //
    28  //go:noinline
    29  func (f *Fake) Invokecall(i int) int {
    30  	return f.call(i)
    31  }
    32  
    33  // Call2 普通方法
    34  //
    35  //go:noinline
    36  func (f *Fake) Call2(i int) int {
    37  	if i < -10000 {
    38  		dummy()
    39  	}
    40  	return i
    41  }