Constructor for edge type.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=ip), | intent(in), | optional | :: | ivertex |
vertex number defining the destination of this edge |
|
character(len=*), | intent(in), | optional | :: | label |
vertex name for grahviz |
|
character(len=*), | intent(in), | optional | :: | attributes |
other attributes for graphviz |
|
class(*), | intent(in), | optional | :: | metadata |
optional user-defined metadata |
pure elemental function edge_constructor(ivertex,label,attributes,metadata) result(e) integer(ip),intent(in),optional :: ivertex !! vertex number defining the destination of this edge character(len=*),intent(in),optional :: label !! vertex name for grahviz character(len=*),intent(in),optional :: attributes !! other attributes for graphviz class(*),intent(in),optional :: metadata !! optional user-defined metadata type(edge) :: e e%ivertex = ivertex if (present(label)) e%label = label if (present(attributes)) e%attributes = attributes if (present(metadata)) allocate(e%attributes, source = attributes) end function edge_constructor