Module kivakit.core

Interface AsIndentedString

All Superinterfaces:
Stringable, StringSource

public interface AsIndentedString extends Stringable
An Stringable sub-interface that traverses a tree of objects, adding information to an AsStringIndenter object as it goes. An AsStringIndenter handles string indenting, directs recursion and performs reflection on fields and methods that are tagged with the annotation @KivaKitIncludeProperty.

The method asString(Format, AsStringIndenter) uses the given AsStringIndenter object to determine if it should recurse or not as well as to perform labeling and indentation of text lines. The asString() implementation simply formats this object with a AsStringIndenter specifying a maximum of 8 levels.

When the traversal is complete, the AsStringIndenter object yields an indented debug string.

Author:
jonathanl (shibo)
See Also: