@SuppressWarnings("unchecked")
  <K1 extends K, V1 extends V> Weigher<K1, V1> getWeigher() {
    return (Weigher<K1, V1>) MoreObjects.firstNonNull(weigher, OneWeigher.INSTANCE);
  }
@SuppressWarnings("unchecked")
  <K1 extends K, V1 extends V> Weigher<K1, V1> getWeigher() {
    return (Weigher<K1, V1>) MoreObjects.firstNonNull(weigher, OneWeigher.INSTANCE);
  }
@ SuppressWarnings ( "unchecked" ) < K1 extends K , V1 extends V > Weigher < K1 , V1 > getWeigher ( ) { return ( Weigher < K1 , V1 > ) MoreObjects . firstNonNull ( weigher , OneWeigher . INSTANCE ) ; }
Make a safe contravariant cast now so we don't have to do it over and over.
Make a safe contravariant cast now so we don t have to do it over and over .