Annotations

class Annotations : Core<AnnotationNode> , CommonOperations<AnnotationNode, Annotations> (source)

Annotations scope.

Functions

Link copied to clipboard
open override fun editor(vararg ops: TextTransformer): Action<Iter<AnnotationNode>, IterValues>

internal function primarily used during graphviz dot generation

Link copied to clipboard
open override fun entity(id: Entity.Type, vararg properties: Property<AnnotationNode>)
open override fun entity(id: Entity.Type, labelFormatter: LabelFormatter, vararg properties: Property<AnnotationNode>)

register entity

open override fun entity(id: Entity.Type, errorIfExists: Boolean, vararg properties: Property<AnnotationNode>)

new entity with label inferred from introspected bytecode element

open override fun entity(id: Entity.Type, labelFormatter: LabelFormatter, errorIfExists: Boolean, vararg properties: Property<AnnotationNode>)

new entity with label from labelFormatter

Link copied to clipboard
fun explodeTypes(element: String, synthesize: Boolean = false, f: Classes.() -> Unit)

Iterates over classes stored within a specified annotation element. If synthesize is set to true, missing types are stubbed based on those stored within the annotation element.

Link copied to clipboard
open override fun filter(regex: Regex, invert: Boolean)
open fun filter(string: String, invert: Boolean = false)

fun filter(entity: Entity.Type)

Filters elements that belongs to entity.

Link copied to clipboard
open override fun label(pattern: String, vararg ops: TextTransformer): LabelFormatter

Set the entity label from a pattern, replacing any ${} variables inside pattern with values from Entity.properties.

Link copied to clipboard
open override fun log(tag: String)

When --debug is passed to the CLI, prints tag and all elements currently in scope.

Link copied to clipboard
open override fun logCount(tag: String)

When --debug is passed to the CLI, prints tag and the count of elements currently in scope.

Link copied to clipboard
fun nested(element: String, f: Annotations.() -> Unit)

Iterates over child annotations referenced by the specified element.

Link copied to clipboard
open override fun property(key: String, extract: Action<Iter<AnnotationNode>, IterValues>): Property<AnnotationNode>
open override fun property(entity: Entity.Type, key: String, extract: Action<Iter<AnnotationNode>, IterValues>)

open override fun property(key: String, strategy: PropertyStrategy, extract: Action<Iter<AnnotationNode>, IterValues>): Property<AnnotationNode>

Associates entity property tag with result of extract action.

open override fun property(entity: Entity.Type, key: String, strategy: PropertyStrategy, extract: Action<Iter<AnnotationNode>, IterValues>)

updates existing entities with property

Link copied to clipboard
fun readAttribute(attribute: String): Action<Iter<AnnotationNode>, IterValues>
Link copied to clipboard
open override fun readName(shorten: Boolean): Action<Iter<AnnotationNode>, IterValues>

Reads the short form name of the element

Link copied to clipboard
open override fun scope(label: String, f: Annotations.() -> Unit)
open override fun scope(label: String, op: ScopeEntityPredicate, entity: Entity.Type, f: Annotations.() -> Unit)
Link copied to clipboard
open operator override fun Entity.Type.set(key: String, children: Entity.Type)

This entity tracks children under the label denoted by key.

Link copied to clipboard
open override fun <E : Enum<E>> withValue(value: E): Action<Iter<AnnotationNode>, IterValues>
open override fun withValue(value: Boolean): Action<Iter<AnnotationNode>, IterValues>
open override fun withValue(value: Number): Action<Iter<AnnotationNode>, IterValues>
open override fun withValue(value: String): Action<Iter<AnnotationNode>, IterValues>

open override fun withValue(value: Entity.Type): Action<Iter<AnnotationNode>, IterValues>

Associates value with entity.