Update the vendor folder (#53)

* Update the vendor folder

* Update the Gopkg.lock by running dep ensure
This commit is contained in:
Robbie Zhang
2018-01-05 11:22:17 -08:00
committed by GitHub
parent 0e123c783b
commit 77d0687688
540 changed files with 78101 additions and 107 deletions

View File

@@ -0,0 +1,38 @@
package stacktrace
import (
"path/filepath"
"runtime"
"strings"
)
// NewFrame returns a new stack frame for the provided information
func NewFrame(pc uintptr, file string, line int) Frame {
fn := runtime.FuncForPC(pc)
if fn == nil {
return Frame{}
}
pack, name := parseFunctionName(fn.Name())
return Frame{
Line: line,
File: filepath.Base(file),
Package: pack,
Function: name,
}
}
func parseFunctionName(name string) (string, string) {
i := strings.LastIndex(name, ".")
if i == -1 {
return "", name
}
return name[:i], name[i+1:]
}
// Frame contains all the information for a stack frame within a go program
type Frame struct {
File string
Function string
Package string
Line int
}