annotations library

User-facing annotations for Ack schema generation.

Classes

AckKey
Annotation that overrides the wire JSON key for a class-first field or constructor parameter.
AckRule
Base type of the Ack rule annotations, such as HasMinLength and IsEmail.
HasMatch
Adds .matches(pattern) to an inferred string schema.
HasMax
Adds .max(max) to an inferred numeric schema.
HasMaxItems
Adds .maxItems(count) to an inferred collection schema.
HasMaxLength
Adds .maxLength(length) to an inferred string schema.
HasMin
Adds .min(min) to an inferred numeric schema.
HasMinItems
Adds .minItems(count) to an inferred collection schema.
HasMinLength
Adds .minLength(length) to an inferred string schema.
HasUniqueItems
Adds .unique() to an inferred collection schema.
IsDate
Adds .date() to an inferred string schema.
IsDateTime
Adds .datetime() to an inferred string schema.
IsEmail
Adds .email() to an inferred string schema.
IsIp
Adds .ip() to an inferred string schema, or .ip(version: version) when version is set.
IsMultipleOf
Adds .multipleOf(divisor) to an inferred numeric schema.
IsNegative
Adds .negative() to an inferred numeric schema.
IsNotEmpty
Adds .notEmpty() to an inferred string or collection (List / Set) schema.
IsNotNull
Rejects an explicit JSON null without requiring the key to exist.
IsOptional
Marks a class-first field as optional on the JSON wire.
IsPositive
Adds .positive() to an inferred numeric schema.
IsRequired
Marks a class-first field as required on the JSON wire.
IsUri
Adds .uri() to an inferred string schema.
IsUrl
Adds .url() to an inferred string schema.
IsUuid
Adds .uuid() to an inferred string schema.
JsonAbsent<T>
An omitted JSON property.
JsonMaybe<T>
An optional, nullable JSON object property with three distinct states.
JsonValue<T>
A present JSON property with value (which may be null).
Schemable
Annotation that marks an Ack schema declaration.
Validate
Deprecated namespace for the Ack rule annotations.

Enums

AckCaseStyle
JSON field-name styles supported by class-first Ack generation.
AckUnknownPropertyPolicy
How a class-first object treats properties that are not declared fields.