abstract class BaseFormatter[Rep <: BaseFormatter[Rep]] extends AnyRef
API basis for renderers that produce character output.
- Self Type
- Rep
- Alphabetic
- By Inheritance
- BaseFormatter
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
BaseFormatter(renderChild: (Rep, Element) ⇒ String, currentElement: Element, parents: List[Element], indentation: Indentation, messageFilter: MessageFilter)
- renderChild
the function to use for rendering child elements
- currentElement
the active element currently being rendered
- parents
the stack of parent elements of this formatter in recursive rendering, with the root element being the last in the list
- indentation
the indentation mechanism for this formatter
- messageFilter
the filter to apply before rendering runtime messages
Abstract Value Members
-
abstract
def
withChild(element: Element): Rep
- Attributes
- protected
-
abstract
def
withIndentation(newIndentation: Indentation): Rep
- Attributes
- protected
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
child(element: Element): String
Renders the specified element on the current line.
-
def
childPerLine(elements: Seq[Element]): String
Renders the specified elements, each of them on a new line using the current level of indentation.
-
def
children(elements: Seq[Element]): String
Renders the specified elements, all on the same line, without any separators.
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
forMessage(message: RuntimeMessage)(whenEnabled: String): String
Renders the specified string only when the given message has at least the minimum message level defined for this formatter instance.
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
indented(f: (Rep) ⇒ String): String
Invokes the specified render function with a new formatter that is indented one level to the right of this formatter.
-
def
indentedChildren(elements: Seq[Element]): String
Renders the specified elements, each of them on a new line with the indentation increased one level to the right.
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
val
newLine: String
A newline character followed by whitespace matching the indentation level of this instance.
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
withMinIndentation(minIndent: Int)(f: (Rep) ⇒ String): String
Invokes the specified render function with a formatter that has at least the specified minimum level of indentation.
Invokes the specified render function with a formatter that has at least the specified minimum level of indentation. If this instance already has an indentation equal or greater to this value, the current level of indentation will be kept.
-
def
withoutIndentation(f: (Rep) ⇒ String): String
Invokes the specified render function with a new formatter that has all indentation disabled.
Invokes the specified render function with a new formatter that has all indentation disabled.
This is usually only required when rendering literal elements or source code where rendered whitespace would be significant.