5

関数が呼び出しスコープから返された行番号を取得することは可能ですか?

例:

func callee() error {
  if cond {
    return errors.New("whoops!")
  }
  return nil
}

func caller() {
  // Possible to retrieve the line number of callee return here?
  callee()
}

スタックから既に削除されているはずなので、それは不可能だと思いますが、まだどこかにキャッシュされているのでしょうか?

使用例は、HTTP ハンドラーがあり、エラーが返された行とファイル名を、コードを散らかさずにログに記録したい場合です。

4

1 に答える 1