mirror of
https://github.com/HighCapable/SweetProperty.git
synced 2025-09-05 10:15:36 +08:00
feat: use @Nonnull better for Kotlin code
This commit is contained in:
@@ -40,6 +40,7 @@ import com.squareup.javapoet.MethodSpec
|
|||||||
import com.squareup.javapoet.TypeSpec
|
import com.squareup.javapoet.TypeSpec
|
||||||
import java.text.SimpleDateFormat
|
import java.text.SimpleDateFormat
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
import javax.annotation.Nonnull
|
||||||
import javax.lang.model.element.Modifier
|
import javax.lang.model.element.Modifier
|
||||||
import kotlin.properties.Delegates
|
import kotlin.properties.Delegates
|
||||||
|
|
||||||
@@ -180,6 +181,7 @@ internal class PropertiesAccessorsGenerator {
|
|||||||
MethodSpec.methodBuilder("get${methodName.capitalize()}")
|
MethodSpec.methodBuilder("get${methodName.capitalize()}")
|
||||||
.addJavadoc("Resolve the \"$accessorsName\" accessors")
|
.addJavadoc("Resolve the \"$accessorsName\" accessors")
|
||||||
.addModifiers(Modifier.PUBLIC, Modifier.FINAL)
|
.addModifiers(Modifier.PUBLIC, Modifier.FINAL)
|
||||||
|
.addAnnotation(Nonnull::class.java)
|
||||||
.returns(className.capitalized().asClassType())
|
.returns(className.capitalized().asClassType())
|
||||||
.addStatement("return ${className.uncapitalized()}")
|
.addStatement("return ${className.uncapitalized()}")
|
||||||
.build()
|
.build()
|
||||||
@@ -198,6 +200,7 @@ internal class PropertiesAccessorsGenerator {
|
|||||||
val typedValue = value.parseTypedValue(configs.isEnableTypeAutoConversion)
|
val typedValue = value.parseTypedValue(configs.isEnableTypeAutoConversion)
|
||||||
addJavadoc("Resolve the \"$accessorsName\" value ${typedValue.second}")
|
addJavadoc("Resolve the \"$accessorsName\" value ${typedValue.second}")
|
||||||
addModifiers(Modifier.PUBLIC, Modifier.FINAL)
|
addModifiers(Modifier.PUBLIC, Modifier.FINAL)
|
||||||
|
.addAnnotation(Nonnull::class.java)
|
||||||
.returns(typedValue.first.java)
|
.returns(typedValue.first.java)
|
||||||
.addStatement("return ${typedValue.second}")
|
.addStatement("return ${typedValue.second}")
|
||||||
}.build()
|
}.build()
|
||||||
@@ -380,10 +383,15 @@ internal class PropertiesAccessorsGenerator {
|
|||||||
*/
|
*/
|
||||||
internal val compileStubFiles get(): List<JavaFile> {
|
internal val compileStubFiles get(): List<JavaFile> {
|
||||||
val stubFiles = mutableListOf<JavaFile>()
|
val stubFiles = mutableListOf<JavaFile>()
|
||||||
|
val nonnullFile =
|
||||||
|
TypeSpec.annotationBuilder(Nonnull::class.java.simpleName)
|
||||||
|
.addModifiers(Modifier.PUBLIC)
|
||||||
|
.build().createJavaFile(Nonnull::class.java.packageName)
|
||||||
val iExtensionAccessorsFile =
|
val iExtensionAccessorsFile =
|
||||||
TypeSpec.interfaceBuilder(IExtensionAccessors::class.java.simpleName)
|
TypeSpec.interfaceBuilder(IExtensionAccessors::class.java.simpleName)
|
||||||
.addModifiers(Modifier.PUBLIC)
|
.addModifiers(Modifier.PUBLIC)
|
||||||
.build().createJavaFile(IExtensionAccessors::class.java.packageName)
|
.build().createJavaFile(IExtensionAccessors::class.java.packageName)
|
||||||
|
stubFiles.add(nonnullFile)
|
||||||
stubFiles.add(iExtensionAccessorsFile)
|
stubFiles.add(iExtensionAccessorsFile)
|
||||||
return stubFiles
|
return stubFiles
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user