edge_constructor Function

private pure elemental function edge_constructor(ivertex, label, attributes, metadata) result(e)

Constructor for edge type.

Arguments

Type IntentOptional 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

Return Value type(edge)


Called by

proc~~edge_constructor~~CalledByGraph proc~edge_constructor dag_module::edge_constructor interface~edge dag_module::edge interface~edge->proc~edge_constructor

Source Code

    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