@@ -161,23 +161,23 @@ object PickledQuotes {
161
161
}
162
162
163
163
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) {
175
175
val name = clazz.getSimpleName.toTypeName
176
176
val enclosing = classToType(clazz.getEnclosingClass)
177
177
if (enclosing.member(name).exists) enclosing.select(name)
178
178
else {
179
179
enclosing.classSymbol.companionModule.termRef.select(name)
180
180
}
181
- }
181
+ } else ctx.getClassIfDefined(clazz.getCanonicalName).typeRef
182
182
}
183
183
}
0 commit comments