Class ApplyType

  • All Implemented Interfaces:
    Type

    public class ApplyType
    extends BaseType
    Type that is a polymorphic type applied to a set of types.
    • Field Detail

      • types

        public final com.google.common.collect.ImmutableList<Type> types
    • Constructor Detail

      • ApplyType

        protected ApplyType​(ParameterizedType type,
                            com.google.common.collect.ImmutableList<Type> types)
    • Method Detail

      • key

        public Type.Key key()
        Description copied from interface: Type
        Description of the type, e.g. "int", "int -> int", "NONE | SOME of 'a".
      • accept

        public <R> R accept​(TypeVisitor<R> typeVisitor)
      • copy

        public Type copy​(TypeSystem typeSystem,
                         UnaryOperator<Type> transform)
        Description copied from interface: Type
        Copies this type, applying a given transform to component types, and returning the original type if the component types are unchanged.