Schema

@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class Schema(val members: Array<KClass<*>>, val dependencies: Array<Schema.Dependency> = [], val reservedWidgets: IntArray = [], val reservedModifiers: IntArray = [])

Annotates an otherwise unused type with a set of Widget-annotated or Modifier-annotated classes which are all part of this schema.

@Schema([
Row::class,
RowAlignment::class,
Button::class,
Text::class,
])
interface Name

See also

Types

Link copied to clipboard
@Target(allowedTargets = [])
annotation class Dependency(val tag: Int, val schema: KClass<*>)

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Modifier tags which are reserved. These cannot be used by a modifier in members. This is useful for ensuring tags from old, retired modifiers are not accidentally reused.

Link copied to clipboard

Widget tags which are reserved. These cannot be used by a widget in members. This is useful for ensuring tags from old, retired widgets are not accidentally reused.