2016-10-20 22 views
5

Doğru yuvalanmış özet türünden alt yazı yazabilmek için, hangi tür yuvalar oluşturuyor, ancak tür belirtiminin bir parçası olarak en düşük düzeye gereksinim duyuyorum. Ancak, aşağıdaki hatalar:Bir tür tanımında iç içe tür parametreleri

immutable Type1{T} <: AbstractT{T} 
    x::Vector{T} 
end 
immutable Type2{T,T2} <: AbstractT{T2} 
    x::Vector{T{T2}} 
end 

Belirtim için bu T2'ye sahip olmanın iyi bir yolu var mı?

+0

Sessiz üçgen gönderim yok. (ya da bu enfekte mi?) –

cevap

9

Bu tür bir hesaplama şu anda uygulanmadı. Arkanda kuralları ihlal birisi hakkında gerçekten endişeleriniz varsa ayrıca bir iç kurucusundaki kısıtlamayı zorlayabilir

immutable Type2{T2,VTT2} <: AbstractT{T2} 
    x::VTT2 
end 
Type2{T2}(x::Vector{Type1{T2}}) = Type2{T2, typeof(x)}(x) 

: Standart geçici çözüm böyle bir şeydir.