Lets implicitly convert a labeled inner edge to its label:
Lets implicitly convert a labeled inner edge to its label:
import scalax.collection.mutable.{Graph => MGraph} case class MyLabel(val i: Int) val g = MGraph(LUnDiEdge(1,3)(MyLabel(4))) val eInner = g.edges.head object MyLabelConversion extends TypedLEdgeImplicits[MGraph, MyLabel] import MyLabelConversion._ val four_2 = eInner.i
As this conversion is not type safe, the user has to ensure that innerEdge
is of appropriate type.
Lets implicitly convert a labeled outer edge to its label:
Lets implicitly convert a labeled outer edge to its label:
case class MyLabel(val i: Int) val eOuter = LUnDiEdge(1,3)(MyLabel(4)) object MyLabelConversion extends OuterLEdgeImplicits[MyLabel] import MyLabelConversion._ val four = eOuter.i
Lets implicitly convert a label to its user type:
Lets implicitly convert a label to its user type:
case class MyLabel(val i: Int) val eOuter = LUnDiEdge(1,3)(MyLabel(4)) object MyLabelConversion extends OuterLEdgeImplicits[MyLabel] import MyLabelConversion._ val label: MyLabel = eOuter.label
As this conversion is not type safe, the user has to ensure that label
is of the type UL
.
(typedLEdgeImplicits: StringAdd).self
(typedLEdgeImplicits: StringFormat).self
(typedLEdgeImplicits: ArrowAssoc[TypedLEdgeImplicits[G, UL]]).x
(Since version 2.10.0) Use leftOfArrow
instead
(typedLEdgeImplicits: Ensuring[TypedLEdgeImplicits[G, UL]]).x
(Since version 2.10.0) Use resultOfEnsuring
instead
Implicit conversions from an inner or outer labeled edge to its label for any graph type.
kind of type of graph.
type of the user label.