Mark creates an explicit mark for the given error, using the same mark as some reference error. Note: if any of the error types has been migrated from a previous package location or a different type, ensure that RegisterTypeMigration() was called prior to Mark().
(err error, reference error)
| 225 | // package location or a different type, ensure that |
| 226 | // RegisterTypeMigration() was called prior to Mark(). |
| 227 | func Mark(err error, reference error) error { |
| 228 | if err == nil { |
| 229 | return nil |
| 230 | } |
| 231 | refMark := getMark(reference) |
| 232 | return &withMark{cause: err, mark: refMark} |
| 233 | } |
| 234 | |
| 235 | // withMark carries an explicit mark. |
| 236 | type withMark struct { |
searching dependent graphs…