package dot
Enables to export Graph
instances to the DOT language by means of user-defined edge and node transformers.
Transformers may enrich the DOT structure with arbitrary DOT attributes and also establish subgraph relationships.
As a starting point, please refer to scalax.collection.io.dot.Export.toDot
.
See also the Graph for Scala DOT User Guide.
- Alphabetic
- By Inheritance
- dot
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- abstract class AttrSeparator extends AnyRef
Template to define any DOT graph attribute separator.
- type DotAST = Graph[DotCluster, DiEdge[DotCluster]]
- Attributes
- protected
- case class DotAttr(name: Id, value: Id) extends Product with Serializable
Represents ID '=' ID of the DOT language grammar.
- case class DotAttrStmt(type: Type, attrList: Seq[DotAttr]) extends Product with Serializable
Represents ID '=' ID of the DOT language grammar.
- case class DotCluster(dotGraph: DotGraph, dotStmts: Set[DotStmt] = MutableSet()) extends Product with Serializable
- Attributes
- protected
- case class DotEdgeStmt(node_1Id: NodeId, node_2Id: NodeId, attrList: Seq[DotAttr] = Seq()) extends DotStmt with Product with Serializable
Represents edge_stmt of the DOT language grammar with the exception of subgraph which is covered by the return value of the user-supplied
*Transformer
functions passed totoDot
.. - sealed trait DotGraph extends AnyRef
- sealed trait DotId extends AnyRef
Represents ID of the DOT language abstract grammar.
- case class DotNodeStmt(nodeId: NodeId, attrList: Seq[DotAttr] = Seq()) extends DotStmt with Product with Serializable
Represents node_stmt of the DOT language grammar with the exception of subgraph which is covered by the return value of the user-supplied
*Transformer
functions passed totoDot
.. - case class DotRootGraph(directed: Boolean, id: Option[Id], strict: Boolean = false, attrStmts: Seq[DotAttrStmt] = Nil, attrList: Seq[DotAttr] = Nil) extends DotGraph with Product with Serializable
Represents graph of the DOT language grammar without embedded node_stmt, edge_stmt and subgraph.
- sealed trait DotStmt extends AnyRef
Represents stmt of the DOT language grammar.
- case class DotSubGraph(ancestor: DotGraph, subgraphId: Id, attrStmts: Seq[DotAttrStmt] = Nil, attrList: Seq[DotAttr] = Nil) extends DotGraph with Product with Serializable
Represents subgraph of the DOT language grammar without embedded node_stmt, edge_stmt and subgraph.
- type EdgeTransformer[N, E <: Edge[N]] = (immutable.Graph.GraphInnerEdge) => Option[(DotGraph, DotEdgeStmt)]
- trait Export[N, E <: Edge[N]] extends Any
Contains methods to transform
graph
to the DOT language. - implicit final class Graph2DotExport[N, E <: Edge[N]] extends AnyVal with Export[N, E]
Enables to call
<g>.toDot
with<g>
being aGraph
instance. - type HyperEdgeTransformer[N, E <: Edge[N]] = (immutable.Graph.GraphInnerEdge) => Iterable[(DotGraph, DotEdgeStmt)]
- class Id extends DotId
Verified DOT ID.
- case class NodeId extends DotId with Product with Serializable
Verified DOT node_id.
- type NodeTransformer[N, E <: Edge[N]] = (immutable.Graph.NodeT) => Option[(DotGraph, DotNodeStmt)]
- case class Spacing(indent: Indent = Tab, graphAttrSeparator: AttrSeparator = NewLine, elemAttrSeparator: AttrSeparator = SemicolonSpace) extends Product with Serializable
- indent
unit of indentation to be used at the beginning of DOT graph lines. This unit is taken n times with n being the depths of the content represented on a given line. The depth increases with DOT subgraphs.
- graphAttrSeparator
the separator to be used for graph/subgraph level DOT graph language elements.
- elemAttrSeparator
the separator to be used for edge/node level DOT graph language elements.
Value Members
- def DotAST: Graph
- Attributes
- protected
- object AttrSeparator
Holds predefined character sequences to separate specific DOT language elements.
- object DefaultSpacing extends Spacing
scalax.collection.io.dot.Spacing with
indent
set toTab
,graphAttrSeparator
set toNewLine
andelemAttrSeparator
set toSemicolonSpace
. - object Elem extends Enumeration
Represents constants of attr_stmt of the DOT language.
- object Id
- object Indent extends Enumeration
Predefined units of indentation.
- object NodeId extends Serializable
- object Record
Types for record-based nodes as described on http://www.graphviz.org/doc/info/shapes.html.
- object implicits