メソッドのソースを表示するmath.Ceil
と、本文のないエクスポートされた関数シグネチャと、実装を含む同じシグネチャのエクスポートされていないバージョンがある次の構文が見つかりました。
// Ceil returns the least integer value greater than or equal to x.
//
// Special cases are:
// Ceil(±0) = ±0
// Ceil(±Inf) = ±Inf
// Ceil(NaN) = NaN
func Ceil(x float64) float64
func ceil(x float64) float64 {
return -Floor(-x)
}
これは、ローカル関数を簡単にエクスポートできる構文だと思います。あれは正しいですか?そして、単一のエクスポートされた関数をパッケージ内で使用する代わりに、なぜこれを行うのでしょうか?