mirror of
https://github.com/fankes/moshi.git
synced 2025-10-20 00:19:21 +08:00
Promote Kotlin type-inferring APIs to the main Moshi package (round 2!) (#1202)
* Make moshi-root a kotlin project * Move moshi kotlin extensions to moshi core * Add appropriate experimental annotations * Add nextAdapter helper * Add explicit return type on addAdapter * Expression body for adapter * Use nextAdapter helper * Opportunistically fix a couple Util warnings * Add Types extensions * Spotless * Use extensions in more places for added coverage * Apply java versions on any java plugin type This way the kotlin projects get this too * Fix circularAdapters test? * Use java 8 in java for code gen too * Fixup with CircularAdaptersTest * Add coverage for remaining * Remove nextAdapter * Remove leftover function * Use asserts left checkNotNull for the contract * boxIfPrimitive * Fixup docs * Copyright fixes * Add parameterized addAdapter * Switch to using native javaType API * Spotless * Back to 2019 * Spotless * Use rawType extension * Fix rebase issues
This commit is contained in:
@@ -21,10 +21,10 @@ import com.squareup.moshi.JsonDataException
|
||||
import com.squareup.moshi.JsonReader
|
||||
import com.squareup.moshi.JsonWriter
|
||||
import com.squareup.moshi.Moshi
|
||||
import com.squareup.moshi.Types
|
||||
import com.squareup.moshi.internal.Util
|
||||
import com.squareup.moshi.internal.Util.generatedAdapter
|
||||
import com.squareup.moshi.internal.Util.resolve
|
||||
import com.squareup.moshi.rawType
|
||||
import java.lang.reflect.Modifier
|
||||
import java.lang.reflect.Type
|
||||
import java.util.AbstractMap.SimpleEntry
|
||||
@@ -184,7 +184,7 @@ class KotlinJsonAdapterFactory : JsonAdapter.Factory {
|
||||
JsonAdapter<*>? {
|
||||
if (annotations.isNotEmpty()) return null
|
||||
|
||||
val rawType = Types.getRawType(type)
|
||||
val rawType = type.rawType
|
||||
if (rawType.isInterface) return null
|
||||
if (rawType.isEnum) return null
|
||||
if (!rawType.isAnnotationPresent(KOTLIN_METADATA)) return null
|
||||
|
Reference in New Issue
Block a user