This PR separates out the IndexMap type into abstract and concrete types.
An AbstractIndexMap type is introduced with a minimal interface required for it to work.
A RealIndexMap type is then introduced as a concrete subtype which assumes that each index of the map translates to a single real-valued binary digit. Going forward this will be the base IndexMap concrete subtype for which new code implementations should support.
The IndexNetworkMap which wraps an IndsNetwork and an IndexMap can now support arbitrary IndexMap subtypes with default constructions pointing to the RealIndexMap.
This PR is in preperation for a re-write of PR #32 which will introduce the ComplexIndexMap type.
This PR separates out the
IndexMap
type into abstract and concrete types.An
AbstractIndexMap
type is introduced with a minimal interface required for it to work. ARealIndexMap
type is then introduced as a concrete subtype which assumes that each index of the map translates to a single real-valued binary digit. Going forward this will be the baseIndexMap
concrete subtype for which new code implementations should support.The
IndexNetworkMap
which wraps anIndsNetwork
and anIndexMap
can now support arbitraryIndexMap
subtypes with default constructions pointing to theRealIndexMap
.This PR is in preperation for a re-write of PR #32 which will introduce the
ComplexIndexMap
type.