From 75a83da8cbecc5b45215bf4c90206d3f3badb95d Mon Sep 17 00:00:00 2001 From: kalmar Date: Mon, 17 Jul 2017 09:24:56 +0200 Subject: [PATCH] Type experiment: parametrise GroupRingElem after types of its parent --- src/GroupRings.jl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/GroupRings.jl b/src/GroupRings.jl index 5610f3c..4654ee5 100644 --- a/src/GroupRings.jl +++ b/src/GroupRings.jl @@ -34,9 +34,9 @@ GroupRing{Gr<:Group}(G::Gr;initialise=true) = GroupRing{Gr, elem_type(G)}(G, ini GroupRing{Gr<:Group, T<:GroupElem}(G::Gr, b::Vector{T}, b_d::Dict{T,Int}, pm::Array{Int,2}) = GroupRing{Gr, T}(G, b, b_d, pm) -type GroupRingElem{T<:Number} <: RingElem +type GroupRingElem{T<:Number, Gr<:Group, GrEl<:GroupElem} <: RingElem coeffs::AbstractVector{T} - parent::GroupRing + parent::GroupRing{Gr, GrEl} function GroupRingElem(c::AbstractVector{T}, RG::GroupRing, check=true) if check @@ -81,8 +81,8 @@ end # ############################################################################### -function GroupRingElem{T<:Number}(c::AbstractVector{T}, RG::GroupRing) - return GroupRingElem{T}(c, RG) +function GroupRingElem{T<:Number, Gr<:Group, GrEl<:GroupElem}(c::AbstractVector{T}, RG::GroupRing{Gr, GrEl}) + return GroupRingElem{T, Gr, GrEl}(c, RG) end function GroupRing(G::Group, pm::Array{Int,2})