#[derive(DefaultNoBound)]
Expand description

Derive Default but do not bound any generic.

This is useful for type generic over runtime:

trait Config {
		type C: Default;
}

// Foo implements [`Default`] because `C` bounds [`Default`].
// Otherwise compilation will fail with an output telling `c` doesn't implement [`Default`].
#[derive(DefaultNoBound)]
struct Foo<T: Config> {
		c: T::C,
}

derive Default but do no bound any generic. Docs are at frame_support::DefaultNoBound.