#![ cfg_attr( not( feature = "use_std" ), no_std ) ] #![ doc( html_logo_url = "https://raw.githubusercontent.com/Wandalen/wTools/alpha/asset/img/graph_logo_v1_trans.png" ) ] #![ doc( html_favicon_url = "https://raw.githubusercontent.com/Wandalen/wTools/alpha/asset/img/graph_logo_v1_trans.ico" ) ] #![ doc( html_root_url = "https://docs.rs/graphs_tools/latest/graphs_tools/" ) ] #![ warn( rust_2018_idioms ) ] #![ warn( missing_debug_implementations ) ] #![ warn( missing_docs ) ] // #![ feature( type_name_of_val ) ] // #![ feature( type_alias_impl_trait ) ] // #![ feature( trace_macros ) ] //! //! Implementation of automata. //! #![ doc = include_str!( concat!( env!( "CARGO_MANIFEST_DIR" ), "/", "Readme.md" ) ) ] use wtools::meta::mod_interface; crate::mod_interface! { /// Abstract layer. #[ cfg( feature = "use_std" ) ] layer abs; /// Canonical representation. #[ cfg( feature = "use_std" ) ] layer canonical; /// Algorithms. #[ cfg( feature = "use_std" ) ] layer algo; } // zzz : implement checks // // - graph is connected // - graph is complete // - graph is isomorphic with another graph // - graph get regularity degree // - graph is bipartite // - graph decomposition on cycles // - graph decomposition on connected components // // - node get open neighbourhood? // - node get closed neighbourhood? // - node get degree ( nodes ) // - node get size ( edges ) //