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
nullwithout 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.