Class CaseStructure


  • public class CaseStructure
    extends java.lang.Object
    • Field Detail

      • implementedTypes

        public final java.util.List<ValueType> implementedTypes
      • subtypeUsages

        public final com.google.common.collect.SetMultimap<java.lang.String,​ValueType> subtypeUsages
      • implementedTypeNames

        private final java.util.Set<java.lang.String> implementedTypeNames
      • subtyping

        public final com.google.common.collect.SetMultimap<java.lang.String,​ValueType> subtyping
      • isImplementedType

        public final com.google.common.base.Predicate<java.lang.String> isImplementedType
      • knownSubtypes

        public final com.google.common.base.Function<java.lang.Object,​java.lang.Iterable<ValueType>> knownSubtypes
    • Constructor Detail

      • CaseStructure

        CaseStructure​(java.lang.Iterable<ValueType> types)
    • Method Detail

      • buildImplementedTypesSet

        private static java.util.Set<java.lang.String> buildImplementedTypesSet​(java.util.List<ValueType> implementationTypes)
      • buildSubtyping

        private static com.google.common.collect.SetMultimap<java.lang.String,​ValueType> buildSubtyping​(java.util.List<ValueType> implementationTypes)
      • knownSubtypesOf

        public java.util.Set<ValueType> knownSubtypesOf​(java.lang.String typeName)