@@ -161,23 +161,23 @@ object PickledQuotes {
161161 }
162162
163163 private def classToType (clazz : Class [_])(implicit ctx : Context ): Type = {
164- if (clazz == classOf [ Boolean ]) defn. BooleanType
165- else if (clazz == classOf [Byte ]) defn.ByteType
166- else if (clazz == classOf [Char ]) defn.CharType
167- else if (clazz == classOf [Short ]) defn.ShortType
168- else if (clazz == classOf [Int ]) defn.IntType
169- else if (clazz == classOf [Long ]) defn.LongType
170- else if (clazz == classOf [Float ]) defn.FloatType
171- else if (clazz == classOf [Double ]) defn.DoubleType
172- else if (clazz == classOf [Unit ]) defn.UnitType
173- else if ( ! clazz.isMemberClass) ctx.getClassIfDefined(clazz.getCanonicalName).typeRef
174- else {
164+ if (clazz.isPrimitive) {
165+ if (clazz == classOf [Boolean ]) defn.BooleanType
166+ else if (clazz == classOf [Byte ]) defn.ByteType
167+ else if (clazz == classOf [Char ]) defn.CharType
168+ else if (clazz == classOf [Short ]) defn.ShortType
169+ else if (clazz == classOf [Int ]) defn.IntType
170+ else if (clazz == classOf [Long ]) defn.LongType
171+ else if (clazz == classOf [Float ]) defn.FloatType
172+ else if (clazz == classOf [Double ]) defn.DoubleType
173+ else defn. UnitType
174+ } else if (clazz.isMemberClass) {
175175 val name = clazz.getSimpleName.toTypeName
176176 val enclosing = classToType(clazz.getEnclosingClass)
177177 if (enclosing.member(name).exists) enclosing.select(name)
178178 else {
179179 enclosing.classSymbol.companionModule.termRef.select(name)
180180 }
181- }
181+ } else ctx.getClassIfDefined(clazz.getCanonicalName).typeRef
182182 }
183183}
0 commit comments