// Copyright © 2023 Marcel Luca Schmidt, Marvin Beckmann
//
// This file is part of qFALL-math.
//
// qFALL-math is free software: you can redistribute it and/or modify it under
// the terms of the Mozilla Public License Version 2.0 as published by the
// Mozilla Foundation. See <https://mozilla.org/en-US/MPL/2.0/>.
//! Integer-based types with arbitrary length based on [`Z`].
//!
//! This module contains the type [`Z`] for integers with arbitrary length and
//! constructions over it.
//! Each struct provides examples regarding usage.
//! In general you can mix [`Z`]'s with any type of rust integer, whenever the
//! corresponding method takes as input integers of type [`Into<Z>`],
//! e.g. the standard rust integers.
pub use MatPolyOverZ;
pub use MatZ;
pub use PolyOverZ;
pub use fmpz_poly_helpers;
pub use Z;
pub use fmpz_helpers;