All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.g2forge.gearbox.functional.control.IArgument Maven / Gradle / Ivy

The newest version!
package com.g2forge.gearbox.functional.control;

import java.lang.annotation.Annotation;
import java.lang.reflect.Type;
import java.util.stream.Stream;

public interface IArgument {
	public T get();

	public default  A getAnnotation(Class type) {
		return Stream.of(getAnnotations()).filter(type::isInstance).map(type::cast).findAny().orElseGet(() -> null);
	}

	public Annotation[] getAnnotations();

	public Type getGenericType();

	public String getName();

	public Class getType();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy