merge merges two similar Call, zapping out differences.
(r *Call)
| 488 | |
| 489 | // merge merges two similar Call, zapping out differences. |
| 490 | func (c *Call) merge(r *Call) Call { |
| 491 | return Call{ |
| 492 | Func: c.Func, |
| 493 | Args: c.Args.merge(&r.Args), |
| 494 | RemoteSrcPath: c.RemoteSrcPath, |
| 495 | Line: c.Line, |
| 496 | SrcName: c.SrcName, |
| 497 | DirSrc: c.DirSrc, |
| 498 | LocalSrcPath: c.LocalSrcPath, |
| 499 | RelSrcPath: c.RelSrcPath, |
| 500 | ImportPath: c.ImportPath, |
| 501 | Location: c.Location, |
| 502 | } |
| 503 | } |
| 504 | |
| 505 | // Stack is a call stack. |
| 506 | type Stack struct { |