HierarchicalRenderers

com.phasmidsoftware.tableparser.core.render.HierarchicalRenderers

Trait to define various renderers for rendering instance of case classes (with their various parameters), containers (Seq and Option), etc. to hierarchical output elements such as XML or HTML.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

def headerRenderer(style: String, attrs: Map[String, String] = ..., sequenced: Boolean)(renderer: HierarchicalRenderer[String]): HierarchicalRenderer[Header]

Method to return a HierarchicalRenderer[Header].

Method to return a HierarchicalRenderer[Header].

CONSIDER using sequenceRenderer

Value parameters

attrs

the attributes.

style

the style for the header (e.g. "th" for an HTML table).

Attributes

Returns

a HierarchicalRenderer[ Seq[String] ]

def indexedRenderer[T : HierarchicalRenderer](overallStyle: String, indexStyle: String): HierarchicalRenderer[Indexed[T]]

Type parameters

T

the underlying type of the first parameter of the input to the render method.

Value parameters

indexStyle

the style of the Index node which will form part of the Node created by this HierarchicalRenderer.

overallStyle

the style of the Node which will be created by this HierarchicalRenderer.

Attributes

Returns

a HierarchicalRenderer[ Indexed[T] ].

def optionRenderer[T : HierarchicalRenderer](style: String, attrs: Map[String, String] = ...): HierarchicalRenderer[Option[T]]

Method to return a HierarchicalRenderer[ Option[T] ]. NOTE: there are no identifiers generated with this HierarchicalRenderer.

Method to return a HierarchicalRenderer[ Option[T] ]. NOTE: there are no identifiers generated with this HierarchicalRenderer.

Type parameters

T

the underlying type of the first parameter of the input to the render method.

Attributes

Returns

a HierarchicalRenderer[ Option[T] ].

def renderer[T](style: String, attrs: Map[String, String] = ...): HierarchicalRenderer[T]

Method to return a HierarchicalRenderer[T]. You do not need to define such a renderer if you can use the default style.

Method to return a HierarchicalRenderer[T]. You do not need to define such a renderer if you can use the default style.

Type parameters

T

the underlying type of the first parameter of the input to the render method.

Value parameters

attrs

a set of base attributes which are explicitly set for this HierarchicalRenderer;

style

the style of the resulting renderer.

Attributes

Returns

a HierarchicalRenderer[T].

def rendererExplicit[T](style: String, attrs: Map[String, String] = ...)(f: T => String): HierarchicalRenderer[T]

Method to return a HierarchicalRenderer[T] where you wish to explicitly define a conversion o a T into a String.

Method to return a HierarchicalRenderer[T] where you wish to explicitly define a conversion o a T into a String.

TESTME

Type parameters

T

the underlying type of the first parameter of the input to the render method.

Value parameters

attrs

a set of base attributes which are explicitly set for this HierarchicalRenderer;

f

the rendering function to transform a T into a String (overrides the default asString method).

style

the style of the resulting renderer.

Attributes

Returns

a HierarchicalRenderer[T].

def sequenceRenderer[T : HierarchicalRenderer](style: String, attrs: Map[String, String] = ...): HierarchicalRenderer[Seq[T]]

Method to return a HierarchicalRenderer[ Seq[T] ]. NOTE: there are no identifiers generated with this HierarchicalRenderer.

Method to return a HierarchicalRenderer[ Seq[T] ]. NOTE: there are no identifiers generated with this HierarchicalRenderer.

Type parameters

T

the underlying type of the first parameter of the input to the render method.

Attributes

Returns

a HierarchicalRenderer[ Seq[T] ]