Skip to content

Commit

Permalink
further promotion rule simplifications
Browse files Browse the repository at this point in the history
  • Loading branch information
StefanKarpinski committed Jan 21, 2014
1 parent 57767ac commit f0e8611
Show file tree
Hide file tree
Showing 3 changed files with 1 addition and 9 deletions.
1 change: 0 additions & 1 deletion base/complex.jl
Expand Up @@ -27,7 +27,6 @@ convert{T<:Real}(::Type{Complex{T}}, z::Complex) =
convert{T<:Real}(::Type{T}, z::Complex) = (imag(z)==0 ? convert(T,real(z)) : convert{T<:Real}(::Type{T}, z::Complex) = (imag(z)==0 ? convert(T,real(z)) :
throw(InexactError())) throw(InexactError()))


promote_rule{T<:Real}(::Type{Complex{T}}, ::Type{T}) = Complex{T}
promote_rule{T<:Real,S<:Real}(::Type{Complex{T}}, ::Type{S}) = promote_rule{T<:Real,S<:Real}(::Type{Complex{T}}, ::Type{S}) =
Complex{promote_type(T,S)} Complex{promote_type(T,S)}
promote_rule{T<:Real,S<:Real}(::Type{Complex{T}}, ::Type{Complex{S}}) = promote_rule{T<:Real,S<:Real}(::Type{Complex{T}}, ::Type{Complex{S}}) =
Expand Down
1 change: 0 additions & 1 deletion base/rational.jl
Expand Up @@ -53,7 +53,6 @@ end
convert(::Type{Rational}, x::Float64) = convert(Rational{Int64}, x) convert(::Type{Rational}, x::Float64) = convert(Rational{Int64}, x)
convert(::Type{Rational}, x::Float32) = convert(Rational{Int}, x) convert(::Type{Rational}, x::Float32) = convert(Rational{Int}, x)


promote_rule{T<:Integer}(::Type{Rational{T}}, ::Type{T}) = Rational{T}
promote_rule{T<:Integer,S<:Integer}(::Type{Rational{T}}, ::Type{S}) = Rational{promote_type(T,S)} promote_rule{T<:Integer,S<:Integer}(::Type{Rational{T}}, ::Type{S}) = Rational{promote_type(T,S)}
promote_rule{T<:Integer,S<:Integer}(::Type{Rational{T}}, ::Type{Rational{S}}) = Rational{promote_type(T,S)} promote_rule{T<:Integer,S<:Integer}(::Type{Rational{T}}, ::Type{Rational{S}}) = Rational{promote_type(T,S)}
promote_rule{T<:Integer,S<:FloatingPoint}(::Type{Rational{T}}, ::Type{S}) = promote_type(T,S) promote_rule{T<:Integer,S<:FloatingPoint}(::Type{Rational{T}}, ::Type{S}) = promote_type(T,S)
Expand Down
8 changes: 1 addition & 7 deletions base/string.jl
Expand Up @@ -814,13 +814,7 @@ end


## string promotion rules ## ## string promotion rules ##


promote_rule(::Type{UTF8String} , ::Type{ASCIIString}) = UTF8String promote_rule{S<:String,T<:String}(::Type{S}, ::Type{T}) = UTF8String
promote_rule(::Type{UTF8String} , ::Type{UTF16String}) = UTF8String
promote_rule(::Type{ASCIIString}, ::Type{UTF16String}) = UTF8String
promote_rule(::Type{UTF32String}, ::Type{UTF16String}) = UTF8String
promote_rule(::Type{UTF8String} , ::Type{UTF32String}) = UTF8String
promote_rule(::Type{ASCIIString}, ::Type{UTF32String}) = UTF8String
promote_rule{T<:String}(::Type{RepString}, ::Type{T}) = RepString


## printing literal quoted string data ## ## printing literal quoted string data ##


Expand Down

0 comments on commit f0e8611

Please sign in to comment.