decorators

open override val decorators: List<DecoratorScheme>(source)

Additional logic that determines how strings are generated.

Decorators are automatically applied when generateStrings is invoked. To generate strings without using decorators, use generateUndecoratedStrings. Decorators are applied in ascending order. That is, the output of the scheme is fed into the decorator at index 0, and that output is fed into the decorator at index 1, and so on.

Implementations of Scheme must implement the decorators field as a getter function, which returns a list of references to decorators. Each decorator must be stored in its own field, annotated with com.intellij.util.xmlb.annotations.OptionTag. This way, the deserializer knows that the field is not transient despite not being a mutable field.