()
| 49 | } |
| 50 | |
| 51 | func (e CallstackEntry) String() string { |
| 52 | at, fun := "<unknown>", "" |
| 53 | if e.Location != nil { |
| 54 | at = e.Location.Tok().At() |
| 55 | } |
| 56 | if e.Function != nil { |
| 57 | callParams := e.Function.CallParameters() |
| 58 | params := make([]string, len(callParams)) |
| 59 | for i, p := range callParams { |
| 60 | val := e.Parameters[p] |
| 61 | params[i] = fmt.Sprintf("%v: %v", p.Name(), val) |
| 62 | } |
| 63 | fun = fmt.Sprintf("%v(%v)", e.Function.Name(), strings.Join(params, ", ")) |
| 64 | } |
| 65 | return fmt.Sprintf("%v%v", at, fun) |
| 66 | } |
| 67 | |
| 68 | // Callstack holds the callstack to a point in the API file. |
| 69 | type Callstack []CallstackEntry |
nothing calls this directly
no test coverage detected