Packages

p

org.virtuslab.ash

annotation

package annotation

Type Members

  1. class SerializabilityTrait extends Annotation with StaticAnnotation

    This annotation is used as a marker for Codec Registration Checker and Serializability Checker.

    This annotation is used as a marker for Codec Registration Checker and Serializability Checker. Annotate Akka serialization marker-trait, and the rest is done by compiler plugins.

    @SerializabilityTrait
    trait MySerializable
  2. class Serializer extends Annotation with StaticAnnotation

    This annotation is used by Codec Registration Checker for marking serializers.

    This annotation is used by Codec Registration Checker for marking serializers.

    Compiler plugin takes the body of a marked class, collects all types that are present, filters them with provided regex and extracts type parameters. Then filtered types and extracted type parameters are checked against all direct subtypes of clazz.

    Sometimes types appear unexpectedly during type class derivation leading to false negatives, i.e. a codec reported as registered even though it's NOT registered. The role of typeRegexPattern is to filter detected types, ensuring they are used in the right context.

    For example, if we want to serialize trait Command, then type Registration[Command] is relevant, while Option[Command] is not.

    If you are using circe-akka-serializer, set typeRegexPattern to Register.REGISTRATION_REGEX

    Annotations
    @nowarn()

Ungrouped