1#![warn(missing_docs)]
71#![warn(clippy::all)]
72#![allow(clippy::module_name_repetitions)]
73#![allow(clippy::clone_on_copy)]
75#![allow(clippy::assign_op_pattern)]
77#![allow(clippy::type_complexity)]
79#![allow(clippy::needless_range_loop)]
81#![allow(clippy::too_many_arguments)]
83#![allow(clippy::neg_cmp_op_on_partial_ord)]
85#![allow(clippy::multiple_bound_locations)]
87#![allow(clippy::manual_memcpy)]
89#![allow(clippy::ptr_arg)]
91#![allow(clippy::never_loop)]
93#![allow(clippy::collapsible_if)]
94#![allow(clippy::iter_cloned_collect)]
95#![allow(clippy::only_used_in_recursion)]
96#![allow(clippy::manual_strip)]
97#![allow(clippy::doc_overindented_list_items)]
98#![allow(clippy::unnecessary_unwrap)]
99
100pub mod bsc;
101pub mod bsr;
102pub mod convert;
103pub mod coo;
104pub mod csc;
105pub mod csr;
106pub mod dia;
107pub mod ell;
108pub mod graph;
109pub mod hyb;
110pub mod linalg;
111pub mod mtx;
112pub mod ops;
113pub mod sell;
114
115pub use bsc::{BscError, BscMatrix};
116pub use bsr::{BsrError, BsrMatrix, DenseBlock};
117pub use convert::{
118 RecommendedFormat,
119 SparsityAnalysis,
120 analyze_sparsity_pattern,
122 bsc_to_bsr,
124 bsc_to_csr,
125 bsr_to_bsc,
126 bsr_to_csr,
128 bsr_to_dia,
129 bsr_to_ell,
130 coo_to_csc,
131 coo_to_csr,
132 csc_to_coo,
133 csc_to_csr,
134 csr_to_bsc,
135 csr_to_bsr,
136 csr_to_coo,
137 csr_to_csc,
138 csr_to_dia,
139 csr_to_ell,
140 csr_to_hyb,
141 csr_to_sell,
142 dia_to_bsr,
143 dia_to_csr,
144 dia_to_ell,
145 ell_to_bsr,
146 ell_to_csr,
147 ell_to_dia,
148 ell_to_hyb,
149 hyb_to_csr,
150 hyb_to_ell,
151 sell_to_csr,
152};
153pub use coo::{CooMatrix, CooMatrixBuilder};
154pub use csc::CscMatrix;
155pub use csr::CsrMatrix;
156pub use dia::{DiaError, DiaMatrix};
157pub use ell::{EllError, EllMatrix};
158pub use graph::{
159 BandwidthProfileResult, BipartiteMatchingResult, BipartiteResult, ConnectedComponentsResult,
160 LevelSetResult, PartitionResult, WeightedMatchingResult, bandwidth_profile,
161 bandwidth_profile_csc, bipartite_matching, connected_components, connected_components_csc,
162 degree_sequence, is_bipartite, is_structurally_symmetric, level_sets, partition_graph_bisect,
163 partition_graph_kway, pseudo_peripheral_vertex, weighted_bipartite_matching,
164};
165pub use hyb::{HybError, HybMatrix, HybStats, HybWidthStrategy};
166pub use mtx::{
167 MtxError, MtxField, MtxFormat, MtxHeader, MtxObject, MtxSymmetry, read_matrix_market,
168 read_matrix_market_coo, read_matrix_market_str, write_matrix_market, write_matrix_market_str,
169 write_matrix_market_symmetric,
170};
171pub use sell::{SellError, SellMatrix, SellStats, SliceSize};
172
173pub mod prelude {
175 pub use crate::bsc::BscMatrix;
176 pub use crate::bsr::{BsrMatrix, DenseBlock};
177 pub use crate::coo::{CooMatrix, CooMatrixBuilder};
178 pub use crate::csc::CscMatrix;
179 pub use crate::csr::CsrMatrix;
180 pub use crate::dia::DiaMatrix;
181 pub use crate::ell::EllMatrix;
182 pub use crate::graph::{
183 BandwidthProfileResult, BipartiteMatchingResult, BipartiteResult,
184 ConnectedComponentsResult, LevelSetResult, PartitionResult, WeightedMatchingResult,
185 bandwidth_profile, bipartite_matching, connected_components, degree_sequence, is_bipartite,
186 is_structurally_symmetric, level_sets, partition_graph_bisect, partition_graph_kway,
187 pseudo_peripheral_vertex, weighted_bipartite_matching,
188 };
189 pub use crate::hyb::{HybMatrix, HybWidthStrategy};
190 pub use crate::linalg::prelude::*;
191 pub use crate::ops::{spmm, spmm_sparse, spmv};
192 pub use crate::sell::{SellMatrix, SliceSize};
193}