~~ lineWidth: 40 ~~
== should put type parameters on multiple lines when they extend beyond the line width ==
class Test<T, const U, TestingThisOut extends number> {
}

[expect]
class Test<
    T,
    const U,
    TestingThisOut extends number,
> {
}

== should break up for an initializer ==
class Test<TestingThisOut = TestingThisOut> {
}

[expect]
class Test<
    TestingThisOut = TestingThisOut,
> {
}

== should break up for an extends ==
class Test<TestingThisOut extends Testing> {
}

[expect]
class Test<
    TestingThisOut extends Testing,
> {
}

== should support in and out ==
type Test<  in   T,  out  U,  in   out V>  ={
}

[expect]
type Test<in T, out U, in out V> = {};
