634
gp = INT2PTR(Agraph_t *, args[0].integer);
635
np = INT2PTR(Agnode_t *, args[1].integer);
637
gp = state->curgraph;
639
v.integer = PTR2INT(addNode(gp, np, 0));
641
error(ERROR_WARNING, "NULL node passed to isSubnode()");
645
error(ERROR_FATAL, "isSubnode currently unsupported");
650
gp = INT2PTR(Agraph_t *, args[0].integer);
651
np = INT2PTR(Agnode_t *, args[1].integer);
653
gp = state->curgraph;
655
v.integer = agdegree(gp, np, 1, 0);
657
error(ERROR_WARNING, "NULL node passed to indegreeOf()");
661
error(ERROR_FATAL, "indegreeOf currently unsupported");
666
gp = INT2PTR(Agraph_t *, args[0].integer);
667
np = INT2PTR(Agnode_t *, args[1].integer);
669
gp = state->curgraph;
671
v.integer = agdegree(gp, np, 0, 1);
673
error(ERROR_WARNING, "NULL node passed to outdegreeOf()");
677
error(ERROR_FATAL, "outdegreeOf currently unsupported");
682
gp = INT2PTR(Agraph_t *, args[0].integer);
683
np = INT2PTR(Agnode_t *, args[1].integer);
685
gp = state->curgraph;
687
v.integer = agdegree(gp, np, 1, 1);
689
error(ERROR_WARNING, "NULL node passed to degreeOf()");
693
error(ERROR_FATAL, "degreeOf currently unsupported");
595
697
gp = INT2PTR(Agraph_t *, args[0].integer);
596
698
objp = INT2PTR(Agobj_t *, args[1].integer);
646
748
error(ERROR_WARNING, "NULL head node passed to edge()");
649
ep = openEdge(np, hp, key);
650
v.integer = PTR2INT(ep);
751
ep = openEdge(0, np, hp, key);
752
v.integer = PTR2INT(ep);
757
key = args[3].string;
760
gp = INT2PTR(Agraph_t *, args[0].integer);
761
np = INT2PTR(Agnode_t *, args[1].integer);
762
hp = INT2PTR(Agnode_t *, args[2].integer);
764
error(ERROR_WARNING, "NULL tail node passed to edge_sg()");
767
error(ERROR_WARNING, "NULL head node passed to edge_sg()");
770
ep = openEdge(gp, np, hp, key);
771
v.integer = PTR2INT(ep);
774
error(ERROR_FATAL, "edge_sg currently unsupported");
654
778
gp = INT2PTR(Agraph_t *, args[0].integer);
675
799
error(ERROR_WARNING, "NULL head node passed to isEdge()");
678
v.integer = PTR2INT(isEdge(np, hp, key));
802
v.integer = PTR2INT(isEdge(state->curgraph, np, hp, key));
806
key = args[3].string;
809
gp = INT2PTR(Agraph_t *, args[0].integer);
810
np = INT2PTR(Agnode_t *, args[1].integer);
811
hp = INT2PTR(Agnode_t *, args[2].integer);
813
gp = state->curgraph;
815
error(ERROR_WARNING, "NULL tail node passed to isEdge_sg()");
818
error(ERROR_WARNING, "NULL head node passed to isEdge_sg()");
821
v.integer = PTR2INT(isEdge(gp, np, hp, key));
823
error(ERROR_FATAL, "isEdge_sg currently unsupported");
828
gp = INT2PTR(Agraph_t *, args[0].integer);
829
ep = INT2PTR(Agedge_t *, args[1].integer);
831
gp = state->curgraph;
833
v.integer = PTR2INT(addEdge(gp, ep, 0));
835
error(ERROR_WARNING, "NULL edge passed to isSubedge()");
839
error(ERROR_FATAL, "isSubedge currently unsupported");
681
843
np = INT2PTR(Agnode_t *, args[0].integer);
846
ep = agfstout(state->curgraph, np);
683
848
ep = agfstout(np);
684
850
v.integer = PTR2INT(ep);
686
852
error(ERROR_WARNING, "NULL node passed to fstout()");
858
gp = INT2PTR(Agraph_t *, args[0].integer);
859
np = INT2PTR(Agnode_t *, args[1].integer);
861
gp = state->curgraph;
863
ep = agfstout(gp, np);
864
v.integer = PTR2INT(ep);
866
error(ERROR_WARNING, "NULL node passed to fstout_sg()");
870
error(ERROR_FATAL, "fstout_sg currently unsupported");
691
874
ep = INT2PTR(Agedge_t *, args[0].integer);
877
ep = agnxtout(state->curgraph, ep);
693
879
ep = agnxtout(ep);
694
881
v.integer = PTR2INT(ep);
696
883
error(ERROR_WARNING, "NULL edge passed to nxtout()");
889
gp = INT2PTR(Agraph_t *, args[0].integer);
890
ep = INT2PTR(Agedge_t *, args[1].integer);
892
gp = state->curgraph;
894
ep = agnxtout(gp, ep);
895
v.integer = PTR2INT(ep);
897
error(ERROR_WARNING, "NULL edge passed to nxtout_sg()");
901
error(ERROR_FATAL, "nxtout_sg currently unsupported");
701
905
np = INT2PTR(Agnode_t *, args[0].integer);
908
ep = agfstin(state->curgraph, np);
703
910
ep = agfstin(np);
704
912
v.integer = PTR2INT(ep);
706
914
error(ERROR_WARNING, "NULL node passed to fstin()");
920
gp = INT2PTR(Agraph_t *, args[0].integer);
921
np = INT2PTR(Agnode_t *, args[1].integer);
923
gp = state->curgraph;
925
ep = agfstin(gp, np);
926
v.integer = PTR2INT(ep);
928
error(ERROR_WARNING, "NULL node passed to fstin_sg()");
932
error(ERROR_FATAL, "fstin_sg currently unsupported");
711
936
ep = INT2PTR(Agedge_t *, args[0].integer);
939
ep = agnxtin(state->curgraph, ep);
713
941
ep = agnxtin(ep);
714
943
v.integer = PTR2INT(ep);
716
945
error(ERROR_WARNING, "NULL edge passed to nxtin()");
951
gp = INT2PTR(Agraph_t *, args[0].integer);
952
ep = INT2PTR(Agedge_t *, args[1].integer);
954
gp = state->curgraph;
956
ep = agnxtin(gp, ep);
957
v.integer = PTR2INT(ep);
959
error(ERROR_WARNING, "NULL edge passed to nxtin_sg()");
963
error(ERROR_FATAL, "nxtin_sg currently unsupported");
721
967
np = INT2PTR(Agnode_t *, args[0].integer);
970
ep = agfstedge(state->curgraph, np);
723
972
ep = agfstedge(np);
724
974
v.integer = PTR2INT(ep);
726
976
error(ERROR_WARNING, "NULL node passed to fstedge()");
982
gp = INT2PTR(Agraph_t *, args[0].integer);
983
np = INT2PTR(Agnode_t *, args[1].integer);
985
gp = state->curgraph;
987
ep = agfstedge(gp, np);
988
v.integer = PTR2INT(ep);
990
error(ERROR_WARNING, "NULL node passed to fstedge_sg()");
994
error(ERROR_FATAL, "fstedge_sg currently unsupported");
731
998
ep = INT2PTR(Agedge_t *, args[0].integer);
732
999
np = INT2PTR(Agnode_t *, args[1].integer);
737
1004
error(ERROR_WARNING, "NULL node passed to nxtedge()");
1008
ep = agnxtedge(state->curgraph, ep, np);
740
1010
ep = agnxtedge(ep, np);
741
v.integer = PTR2INT(ep);
1012
v.integer = PTR2INT(ep);
1017
gp = INT2PTR(Agraph_t *, args[0].integer);
1018
ep = INT2PTR(Agedge_t *, args[1].integer);
1019
np = INT2PTR(Agnode_t *, args[2].integer);
1021
gp = state->curgraph;
1023
error(ERROR_WARNING, "NULL edge passed to nxtedge_sg()");
1026
error(ERROR_WARNING, "NULL node passed to nxtedge_sg()");
1029
ep = agnxtedge(gp, ep, np);
1030
v.integer = PTR2INT(ep);
1033
error(ERROR_FATAL, "nxtedge_sg currently unsupported");
745
1037
gp = INT2PTR(Agraph_t *, args[0].integer);
1999
2291
root = sameG(t, h, "openEdge", "tail and head node");
2295
if (g && (root != agroot(g)))
2300
ep = agedge(g, t, h, key, 1);
2003
2302
t = (Agnode_t *) agrebind(root, OBJ(t));
2004
2303
h = (Agnode_t *) agrebind(root, OBJ(h));
2005
2304
ep = agedge(t, h, key, 1);
2006
2306
if (ep && !aggetrec(ep, UDATA, 0))
2007
2307
agbindrec(ep, UDATA, sizeof(edata), 0);