Re: [julia-users] Multiple dispatch and AbstractString

2016-02-10 Thread Ján Dolinský
Hi guys, This indeed solves the problem. Thank you. Jan Dňa streda, 10. februára 2016 16:42:45 UTC+1 Mauro napísal(-a): > > On Wed, 2016-02-10 at 16:37, Ravi S > > wrote: > > g(s::Union{Array{ASCIIString,1},Array{UTF8String,1}}) = println("here!") > > Although, note that this only works for t

Re: [julia-users] Multiple dispatch and AbstractString

2016-02-10 Thread Mauro
On Wed, 2016-02-10 at 16:37, Ravi S wrote: > g(s::Union{Array{ASCIIString,1},Array{UTF8String,1}}) = println("here!") Although, note that this only works for those two subtypes of AbstractString and not any others. Whereas g{S<:AbstractString}(s::Vector{S}) = println("here!") works for all s

Re: [julia-users] Multiple dispatch and AbstractString

2016-02-10 Thread Mauro
This is because Julia's types are invariant (it's easy to find in the documentation once you know what to look for): g{S<:AbstractString}(s::Vector{S}) = println("here!") On Wed, 2016-02-10 at 16:23, Ján Dolinský wrote: > Hi, > > I am facing the following dispatch problem: > > typealias MyString

[julia-users] Multiple dispatch and AbstractString

2016-02-10 Thread Lutfullah Tomak
I think you need g{T<:MyString}(x::Vector{T}) Have a look in http://docs.julialang.org/en/release-0.4/manual/types/#man-parametric-types for parametric types.

Re: [julia-users] Multiple dispatch and AbstractString

2016-02-10 Thread Ravi S
g(s::Union{Array{ASCIIString,1},Array{UTF8String,1}}) = println("here!") Regards, Ravi On Wednesday, February 10, 2016 at 9:04:49 PM UTC+5:30, Mauro wrote: > > This is because Julia's types are invariant (it's easy to find in the > documentation once you know what to look for): > > g{S<:Abstrac

[julia-users] Multiple dispatch and AbstractString

2016-02-10 Thread Ján Dolinský
Hi, I am facing the following dispatch problem: typealias MyString AbstractString g(s::Vector{MyString}) = println("here!") g(s::MyString) = println("there!") a = ["asd", "bvc", "qwerty"] b = ["asdť", "bvc", "qwerty"] println(typeof(a)) Array{ASCIIString,1} println(typeof(b)) Array{UTF8String