[Gradle] Add documentation on IdeMultiplatformImport.serialize

KT-58601
This commit is contained in:
Sebastian Sellmair
2023-05-10 14:26:12 +02:00
committed by Space Team
parent 82ac61e306
commit d4e1321c65
@@ -50,6 +50,12 @@ interface IdeMultiplatformImport {
fun serialize(dependencies: Iterable<IdeaKotlinDependency>): List<ByteArray> fun serialize(dependencies: Iterable<IdeaKotlinDependency>): List<ByteArray>
/**
* Will try to serialise the [value] for IDE import.
* Returns `null` if there is no [IdeaKotlinExtrasSerializationExtension] provided that can handle the particular [key],
* or if the registered serializer fails with an exception.
* See [registerExtrasSerializationExtension] for 'how to register a serializer for extra values'
*/
fun <T : Any> serialize(key: Extras.Key<T>, value: T): ByteArray? fun <T : Any> serialize(key: Extras.Key<T>, value: T): ByteArray?
/** /**
@@ -75,7 +81,7 @@ interface IdeMultiplatformImport {
resolver: IdeAdditionalArtifactResolver, resolver: IdeAdditionalArtifactResolver,
constraint: SourceSetConstraint, constraint: SourceSetConstraint,
phase: AdditionalArtifactResolutionPhase, phase: AdditionalArtifactResolutionPhase,
level: AdditionalArtifactResolutionLevel = AdditionalArtifactResolutionLevel.Default level: AdditionalArtifactResolutionLevel = AdditionalArtifactResolutionLevel.Default,
) )
/** /**
@@ -86,7 +92,7 @@ interface IdeMultiplatformImport {
fun registerDependencyTransformer( fun registerDependencyTransformer(
transformer: IdeDependencyTransformer, transformer: IdeDependencyTransformer,
constraint: SourceSetConstraint, constraint: SourceSetConstraint,
phase: DependencyTransformationPhase phase: DependencyTransformationPhase,
) )
/** /**
@@ -96,7 +102,7 @@ interface IdeMultiplatformImport {
@ExternalKotlinTargetApi @ExternalKotlinTargetApi
fun registerDependencyEffect( fun registerDependencyEffect(
effect: IdeDependencyEffect, effect: IdeDependencyEffect,
constraint: SourceSetConstraint constraint: SourceSetConstraint,
) )
/** /**
@@ -113,7 +119,7 @@ interface IdeMultiplatformImport {
*/ */
@ExternalKotlinTargetApi @ExternalKotlinTargetApi
fun registerExtrasSerializationExtension( fun registerExtrasSerializationExtension(
extension: IdeaKotlinExtrasSerializationExtension extension: IdeaKotlinExtrasSerializationExtension,
) )
/** /**
@@ -295,7 +301,7 @@ internal val Project.kotlinIdeMultiplatformImport: IdeMultiplatformImport get()
@Suppress("unused") @Suppress("unused")
@ExternalKotlinTargetApi @ExternalKotlinTargetApi
fun IdeMultiplatformImport.registerExtrasSerializationExtension( fun IdeMultiplatformImport.registerExtrasSerializationExtension(
builder: IdeaKotlinExtrasSerializationExtensionBuilder.() -> Unit builder: IdeaKotlinExtrasSerializationExtensionBuilder.() -> Unit,
) { ) {
registerExtrasSerializationExtension(IdeaKotlinExtrasSerializationExtension(builder)) registerExtrasSerializationExtension(IdeaKotlinExtrasSerializationExtension(builder))
} }
@@ -306,7 +312,7 @@ fun IdeMultiplatformImport.registerExtrasSerializationExtension(
*/ */
@ExternalKotlinTargetApi @ExternalKotlinTargetApi
infix fun SourceSetConstraint.or( infix fun SourceSetConstraint.or(
other: SourceSetConstraint other: SourceSetConstraint,
) = SourceSetConstraint { sourceSet -> ) = SourceSetConstraint { sourceSet ->
this@or(sourceSet) || other(sourceSet) this@or(sourceSet) || other(sourceSet)
} }
@@ -317,7 +323,7 @@ infix fun SourceSetConstraint.or(
*/ */
@ExternalKotlinTargetApi @ExternalKotlinTargetApi
infix fun SourceSetConstraint.and( infix fun SourceSetConstraint.and(
other: SourceSetConstraint other: SourceSetConstraint,
) = SourceSetConstraint { sourceSet -> ) = SourceSetConstraint { sourceSet ->
this@and(sourceSet) && other(sourceSet) this@and(sourceSet) && other(sourceSet)
} }