// throw new IllegalArgumentException(...);
// }
{
JMethod m = type.method(JMod.PUBLIC|JMod.STATIC , type, "fromValue" );
JVar $v = m.param(baseExposedType,"v");
JForEach fe = m.body().forEach(type,"c", type.staticInvoke("values") );
JExpression eq;
if(baseExposedType.isPrimitive())
eq = fe.var().ref($value).eq($v);
else
eq = fe.var().ref($value).invoke("equals").arg($v);