It should be. If the desired prototype isn't found we return an error, and if it is found then we know the desired JSManaged type will be usable. Granted, the latter is predicated on T being a type associated with the prototype being checked.