annotations library
User-facing annotations for Ack schema generation.
Classes
- AckField
- Overrides the inferred schema and/or presence for a class-first field.
- AckInfer
- Marks a top-level Ack schema for immutable model-class generation.
- AckModel
- Marks a hand-written class for Ack schema generation.
- AckType
- Marks a top-level Ack schema for frozen legacy extension-type generation.
- Date
-
Adds
.date()to an inferred string schema. -
Adds
.email()to an inferred string schema. - Matches
-
Adds
.matches(pattern)to an inferred string schema. - Max
-
Adds
.max(value)to an inferred numeric schema. - MaxItems
-
Adds
.maxItems(count)to an inferred collection schema. - MaxLength
-
Adds
.maxLength(length)to an inferred string schema. - Min
-
Adds
.min(value)to an inferred numeric schema. - MinItems
-
Adds
.minItems(count)to an inferred collection schema. - MinLength
-
Adds
.minLength(length)to an inferred string schema. - MultipleOf
-
Adds
.multipleOf(value)to an inferred numeric schema. - Negative
-
Adds
.negative()to an inferred numeric schema. - NotEmpty
-
Adds
.notEmpty()to an inferred string schema. - NotNull
-
Rejects an explicit JSON
nullwithout requiring the key to exist. - Optional
- Marks a class-first field as optional on the wire.
- Positive
-
Adds
.positive()to an inferred numeric schema. - Required
- Marks a class-first field as required on the wire.
- Schemable
- Marks an Ack schema declaration.
- UniqueItems
-
Adds
.unique()to an inferred collection schema. - Url
-
Adds
.url()to an inferred string schema. - Uuid
-
Adds
.uuid()to an inferred string schema.
Enums
- AckCaseStyle
- JSON field-name styles supported by class-first Ack generation.
- AckFieldPresence
- Overrides inferred input-presence for a class-first field.
- AckUnknownPropertyPolicy
- How a class-first object treats properties that are not declared fields.