JodaTime maGenerics Hell - Jak przekazać joda.DateTime do Hamcrest Matcher.greaterThan?
public final class DateTime extends BaseDateTime {...}
który pracuje jego droga do
public interface ReadableInstant extends Comparable<ReadableInstant>
Hamcrest ma
public static <T extends java.lang.Comparable<T>> org.hamcrest.Matcher<? super T>
greaterThan(T value) {...}
Gdy próbuję
greaterThan(new DateTime());
następnie pojawia się błąd kompilacji (Eclipse gi największa wskazówka)
Ogólna metoda greaterThan typu Matchers nie ma zastosowania dla argumentów (DateTime). Wywnioskowaną typu DateTime nie jest prawidłową substytut parametru ograniczonego>
mam rację sądząc, że podpis greaterThan
powinny być rzeczywiście
public static <T extends java.lang.Comparable<? super T>> org.hamcrest.Matcher<? super T>
greaterThan(T value)
? I czy istnieje sposób, aby je dopasować, nie licząc odlewania do surowego Comparable
?
Zobacz także http://stackoverflow.com/questions/6452313/how-to-implement-a-eneric-maxcomparable--comparable-b-function-in-java –
[Źródło bieżące 'OrderingComparison'] (http://code.google.com/p/hamcrest/source/browse/trunk/hamcrest-java/hamcrest-library/src/main/java/org/hamcrest/number/OrderingComparison.java) ma '> Matcher greaterThan (wartość T) '. –
@ Davavandness - Powinienem powiedzieć, że patrzyłem na 1.3.0RC1, ale czy RC2 nie zmienia tylko typu powrotu? To argument, który nie jest akceptowany. –