| /* |
| * Copyright (c) 2016 Mockito contributors |
| * This program is made available under the terms of the MIT License. |
| */ |
| package org.mockito.internal.hamcrest; |
| |
| import org.hamcrest.BaseMatcher; |
| import org.hamcrest.Matcher; |
| |
| import static org.mockito.internal.util.reflection.GenericTypeExtractor.genericTypeOf; |
| |
| /** |
| * Extracts generic type of matcher |
| */ |
| public class MatcherGenericTypeExtractor { |
| |
| /** |
| * Gets the generic type of given matcher. For example, |
| * for matcher class that extends BaseMatcher[Integer] this method returns Integer |
| */ |
| public static Class<?> genericTypeOfMatcher(Class<?> matcherClass) { |
| //TODO SF check if we can reuse it for Mockito ArgumentMatcher |
| return genericTypeOf(matcherClass, BaseMatcher.class, Matcher.class); |
| } |
| } |