Skip to main content

Module ring

Module ring 

Source
Expand description

Contains the core traits of the library - ring::RingBase and ring::RingStore.

Modules§

generic_testsgeneric_tests

Structs§

RingElementDisplayWrapper
Wrapper around a ring and one of its elements that implements std::fmt::Display and will print the element. Used by RingStore::format().
RingRef
The second most basic crate::ring::RingStore. Similarly to crate::ring::RingValue it is just a no-op container.
RingValue
The most fundamental crate::ring::RingStore. It is basically a no-op container, i.e. stores a crate::ring::RingBase object by value, and allows accessing it.

Enums§

EnvBindingStrength
Describes the context in which to print an algebraic expression. It is usually used to determine when to use parenthesis during printing.

Traits§

HashableElRing
Trait for rings that can compute hashes for their elements. This should be compatible with RingBase::eq_el in the usual way.
HashableElRingStore
RingStore for HashableElRings
RingBase
Basic trait for objects that have a ring structure. This trait is implementor-facing, so designed to be used for implementing new rings.
RingExtension
Trait for rings that are an extension ring of a base ring. This does not have to be a proper extension in the mathematical sense, but is in some cases implemented for a wrapper of a ring object that represents the same ring.
RingExtensionStore
RingStore for RingExtensions
RingStore
Basic trait for objects that store (in some sense) a ring. It can also be considered the user-facing trait for rings, so rings are always supposed to be used through a RingStore-object.

Type Aliases§

El
Alias for <<Self as RingStore>::Type as RingBase>::Element.