@@ -307,6 +307,20 @@ extern "C" SEXP _igraphlite_is_biconnected_(SEXP graph) {
307307 return cpp11::as_sexp (is_biconnected_ (cpp11::as_cpp<cpp11::decay_t <const cpp11::external_pointer<IGraph>>>(graph)));
308308 END_CPP11
309309}
310+ // cycles.cpp
311+ bool is_dag_ (const cpp11::external_pointer<IGraph> graph);
312+ extern " C" SEXP _igraphlite_is_dag_ (SEXP graph) {
313+ BEGIN_CPP11
314+ return cpp11::as_sexp (is_dag_ (cpp11::as_cpp<cpp11::decay_t <const cpp11::external_pointer<IGraph>>>(graph)));
315+ END_CPP11
316+ }
317+ // cycles.cpp
318+ SEXP is_eulerian_ (const cpp11::external_pointer<IGraph> graph);
319+ extern " C" SEXP _igraphlite_is_eulerian_ (SEXP graph) {
320+ BEGIN_CPP11
321+ return cpp11::as_sexp (is_eulerian_ (cpp11::as_cpp<cpp11::decay_t <const cpp11::external_pointer<IGraph>>>(graph)));
322+ END_CPP11
323+ }
310324// data.cpp
311325SEXP as_adjlist_ (const cpp11::external_pointer<IGraph> graph, const int mode, const int loops, const bool multiple);
312326extern " C" SEXP _igraphlite_as_adjlist_ (SEXP graph, SEXP mode, SEXP loops, SEXP multiple) {
@@ -796,6 +810,13 @@ extern "C" SEXP _igraphlite_is_simple_(SEXP graph, SEXP directed) {
796810 END_CPP11
797811}
798812// structural.cpp
813+ bool is_acyclic_ (const cpp11::external_pointer<IGraph> graph);
814+ extern " C" SEXP _igraphlite_is_acyclic_ (SEXP graph) {
815+ BEGIN_CPP11
816+ return cpp11::as_sexp (is_acyclic_ (cpp11::as_cpp<cpp11::decay_t <const cpp11::external_pointer<IGraph>>>(graph)));
817+ END_CPP11
818+ }
819+ // structural.cpp
799820bool has_loop_ (const cpp11::external_pointer<IGraph> graph);
800821extern " C" SEXP _igraphlite_has_loop_ (SEXP graph) {
801822 BEGIN_CPP11
@@ -941,9 +962,12 @@ static const R_CallMethodDef CallEntries[] = {
941962 {" _igraphlite_incident_" , (DL_FUNC) &_igraphlite_incident_, 4 },
942963 {" _igraphlite_induced_subgraph_" , (DL_FUNC) &_igraphlite_induced_subgraph_, 3 },
943964 {" _igraphlite_induced_subgraph_edges_" , (DL_FUNC) &_igraphlite_induced_subgraph_edges_, 2 },
965+ {" _igraphlite_is_acyclic_" , (DL_FUNC) &_igraphlite_is_acyclic_, 1 },
944966 {" _igraphlite_is_biconnected_" , (DL_FUNC) &_igraphlite_is_biconnected_, 1 },
945967 {" _igraphlite_is_connected_" , (DL_FUNC) &_igraphlite_is_connected_, 2 },
968+ {" _igraphlite_is_dag_" , (DL_FUNC) &_igraphlite_is_dag_, 1 },
946969 {" _igraphlite_is_directed_" , (DL_FUNC) &_igraphlite_is_directed_, 1 },
970+ {" _igraphlite_is_eulerian_" , (DL_FUNC) &_igraphlite_is_eulerian_, 1 },
947971 {" _igraphlite_is_simple_" , (DL_FUNC) &_igraphlite_is_simple_, 2 },
948972 {" _igraphlite_k_regular_game_" , (DL_FUNC) &_igraphlite_k_regular_game_, 4 },
949973 {" _igraphlite_layout_circle_" , (DL_FUNC) &_igraphlite_layout_circle_, 2 },
0 commit comments