Class SymTypeUnboxingVisitor

  • All Implemented Interfaces:
    ISymTypeVisitor

    public class SymTypeUnboxingVisitor
    extends SymTypeDeepCloneVisitor
    Unboxes SymTypeExpressions, including, but not limited to, Java primitive unboxing e.g., java.lang.Integer -> int e.g., java.util.List -> List Usage: calculate(symType)
    • Field Detail

      • primitiveUnboxMap

        protected static final java.util.Map<java.lang.String,​java.lang.String> primitiveUnboxMap
        Map for unboxing to primitive types (e.g. "java.lang.Integer" -> "int") Results are fully qualified.
      • objectUnboxMap

        protected static final java.util.Map<java.lang.String,​java.lang.String> objectUnboxMap
        Map for unboxing to object types (e.g. "java.lang.String" -> "String") Results are fully qualified.
      • genericUnboxMap

        protected static final java.util.Map<java.lang.String,​java.lang.String> genericUnboxMap
        Map for unboxing to generic types (e.g. "java.util.List" -> "List") Results are fully qualified.
    • Constructor Detail

      • SymTypeUnboxingVisitor

        public SymTypeUnboxingVisitor()
    • Method Detail

      • getPrimitiveUnboxMap

        public java.util.Map<java.lang.String,​java.lang.String> getPrimitiveUnboxMap()
      • getObjectUnboxMap

        public java.util.Map<java.lang.String,​java.lang.String> getObjectUnboxMap()
      • getGenericUnboxMap

        public java.util.Map<java.lang.String,​java.lang.String> getGenericUnboxMap()
      • resolveUnboxedSymType

        protected java.util.Optional<TypeSymbol> resolveUnboxedSymType​(java.lang.String name,
                                                                       java.util.Map<java.lang.String,​java.lang.String> unboxMap)
        iff there is a unboxed variant of the given symtype, this tries to resolve it