//go:build goexperiment.genericmethods // Copyright 2026 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package rand // N returns a pseudo-random number in the half-open interval [0,n). // The type parameter Int can be any integer type. // It panics if n <= 0. func (r *Rand) N[Int intType](n Int) Int { // TODO: See CL 775100, // When delete the goexperiment.genericmethods, // make this method // share the implementation with the global function N // and delete this file. if n <= 0 { panic("invalid argument to N") } return Int(r.uint64n(uint64(n))) }