smithy.api.Sparse.scala Maven / Gradle / Ivy
package smithy.api
import smithy4s.Hints
import smithy4s.Schema
import smithy4s.ShapeId
import smithy4s.ShapeTag
import smithy4s.schema.Schema.constant
/** Marks a list or map as sparse. */
final case class Sparse()
object Sparse extends ShapeTag.Companion[Sparse] {
val id: ShapeId = ShapeId("smithy.api", "sparse")
val hints: Hints = Hints(
smithy.api.Documentation("Marks a list or map as sparse."),
smithy.api.Trait(selector = Some(":is(list, map)"), structurallyExclusive = None, conflicts = None, breakingChanges = Some(List(smithy.api.TraitDiffRule(change = smithy.api.TraitChangeType.PRESENCE.widen, severity = smithy.api.Severity.ERROR.widen, path = None, message = None)))),
).lazily
implicit val schema: Schema[Sparse] = constant(Sparse()).withId(id).addHints(hints)
}