HEX
Server: Apache/2.4.62 (Unix) OpenSSL/1.1.1k
System: Linux ns565604.ip-54-39-133.net 4.18.0-553.50.1.el8_10.x86_64 #1 SMP Tue Apr 15 08:09:22 EDT 2025 x86_64
User: greer489 (1034)
PHP: 8.3.19
Disabled: NONE
Upload Files
File: //usr/share/graphviz/gvpr/group
/* Collapse all nodes with group = X into a single node */
BEG_G {
  node_t metaN; 
  graph_t g = graph ("metagraph", "S");
  $tvtype = TV_ne;
  $O = g;
}

  /* create only one node with given name/value */
N[group == "X"] {
  if (!metaN) {
    metaN = node (g, $.name);
  }
}

  /* duplicate all others */
N[group != "X"] { node (g, $.name); }

  /* Create an edge only if at least one of the nodes
   * is not a collapsed node */
E {
  node_t t;
  node_t h;
  if ($.tail.group == "X") { 
    if ($.head.group == "X") return;
    t = metaN;
    h = node (g, $.head.name);
  }
  else if ($.head.group == "X") {
    t = node (g, $.tail.name);
    h = metaN;
  }
  else {
    t = node (g, $.tail.name);
    h = node (g, $.head.name);
  }
  edge (t, h, "");
}

  /* set g to be output graph */