PreviousUpNext

14.4.112  Traitful_Graphtree

The standard library Traitful_Graphtree api is part of the graph-visualization support infrastructure.

The Traitful_Graphtree api is implemented by the planar_graphtree package.

The Traitful_Graphtree api source code is in src/lib/std/graphtree/traitful-graphtree.api.

The above information is manually maintained and may contain errors.

api {    Traitful_Graph ;
    Node ;
    Edge ;
    Graph_Info ;
    Node_Info ;
    Edge_Info ;
    exception GRAPHTREE_ERROR String;
    Graph_Part 
      = EDGE_PART Edge
      | GRAPH_PART Traitful_Graph
      | NODE_PART Node
      | PROTOEDGE_PART Traitful_Graph
      | PROTONODE_PART Traitful_Graph;
    make_graph : {info:Null_Or(Graph_Info ), 
                  make_default_edge_info:Void -> Edge_Info, 
                  make_default_graph_info:Void -> Graph_Info, 
                  make_default_node_info:Void -> Node_Info, 
                  name:String}
                 -> Traitful_Graph;
    graph_name : Traitful_Graph -> String;
    node_name : Node -> String;
    node_count : Traitful_Graph -> Int;
    edge_count : Traitful_Graph -> Int;
    has_node : (Traitful_Graph , Node) -> Bool;
    has_edge : (Traitful_Graph , Edge) -> Bool;
    drop_node : (Traitful_Graph , Node) -> Void;
    drop_edge : (Traitful_Graph , Edge) -> Void;
    make_node : (Traitful_Graph , String , Null_Or(Node_Info ))
                -> Node;
    get_or_make_node : (Traitful_Graph , String , Null_Or(Node_Info ))
                       -> Node;
    find_node : (Traitful_Graph , String) -> Null_Or(Node );
    nodes : Traitful_Graph -> List(Node );
    nodes_apply : (Node -> Void) -> Traitful_Graph -> Void;
    nodes_fold : ((Node , X) -> X) -> Traitful_Graph -> X -> X;
    make_edge : {graph:Traitful_Graph,  head:Node, 
                 info:Null_Or(Edge_Info ),  tail:Node}
                -> Edge;
    edges : Traitful_Graph -> List(Edge );
    in_edges : (Traitful_Graph , Node) -> List(Edge );
    out_edges : (Traitful_Graph , Node) -> List(Edge );
    in_edges_apply : (Edge -> Void) -> (Traitful_Graph , Node) -> Void;
    out_edges_apply : (Edge -> Void) -> (Traitful_Graph , Node) -> Void;
    head : Edge -> Node;
    tail : Edge -> Node;
    nodes_of : Edge -> {head:Node,  tail:Node};
    make_subgraph : (Traitful_Graph , String , Null_Or(Graph_Info ))
                    -> Traitful_Graph;
    find_subgraph : (Traitful_Graph , String) -> Null_Or(Traitful_Graph );
    get_trait : Graph_Part -> String -> Null_Or(String );
    set_trait : Graph_Part -> (String , String) -> Void;
    drop_trait : Graph_Part -> String -> Void;
    trait_apply : Graph_Part -> ((String , String) -> Void) -> Void;
    count_trait : Graph_Part -> Int;
    graph_info_of : Traitful_Graph -> Graph_Info;
    edge_info_of : Edge -> Edge_Info;
    node_info_of : Node -> Node_Info;
    eq_graph : (Traitful_Graph , Traitful_Graph) -> Bool;
    eq_node : (Node , Node) -> Bool;
    eq_edge : (Edge , Edge) -> Bool;
};


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext