Interface OpRequest


  • public interface OpRequest
    Data structure which identifies an Op by name and/or type(s) and/or argument type(s), along with a list of input arguments.
    Author:
    Christian Dietz (University of Konstanz), Curtis Rueden, Gabriel Selzer
    • Method Detail

      • name

        String name()
        Gets the name of the requested Op.
        Returns:
        the name of the requested Op
      • type

        Type type()
        Gets the functional Op Type requested.
        Returns:
        the functional Op type requested
      • outType

        Type outType()
        Gets the request's expected output Type.
        Returns:
        the desired Type of output objects.
      • argTypes

        Type[] argTypes()
        Gets the request's argument types.
        Returns:
        the Types of the arguments that the user wishes to pass to the Op
      • label

        String label()
        Gets a label identifying the Op's scope (i.e., its name and/or types).
        Returns:
        a label identifying the Op's scope
      • typesMatch

        boolean typesMatch​(Type opType,
                           Map<TypeVariable<?>,​Type> typeVarAssigns)
        Determines whether the specified type satisfies the op's required types.
      • requestString

        default String requestString()
      • requestEquals

        default boolean requestEquals​(Object obj)
      • requestHashCode

        default int requestHashCode()
      • filterNulls

        static Type[] filterNulls​(Type... types)