|
73 | 73 | # methods to get the current default objects
|
74 | 74 | # note: if you want to set a default for an abstract type (i.e. AbstractFloat)
|
75 | 75 | # you'll need to extend this method like here:
|
| 76 | + |
| 77 | +const ComplexInteger = Complex{<:Integer} |
| 78 | +const ComplexFloat = Complex{<:AbstractFloat} |
| 79 | +const ComplexRational = Complex{<:Rational} |
| 80 | + |
76 | 81 | default_spec(::Type{<:Integer}) = DEFAULT_FORMATTERS[Integer]
|
77 | 82 | default_spec(::Type{<:AbstractFloat}) = DEFAULT_FORMATTERS[AbstractFloat]
|
78 | 83 | default_spec(::Type{<:AbstractString}) = DEFAULT_FORMATTERS[AbstractString]
|
79 | 84 | default_spec(::Type{<:AbstractChar}) = DEFAULT_FORMATTERS[AbstractChar]
|
80 | 85 | default_spec(::Type{<:AbstractIrrational}) = DEFAULT_FORMATTERS[AbstractIrrational]
|
81 | 86 | default_spec(::Type{<:Number}) = DEFAULT_FORMATTERS[Number]
|
82 |
| -default_spec(::Complex{T} where T<:Integer) = DEFAULT_FORMATTERS[Complex{T} where T<:Integer] |
83 |
| -default_spec(::Complex{T} where T<:AbstractFloat) = DEFAULT_FORMATTERS[Complex{T} where T<:AbstractFloat] |
84 |
| -default_spec(::Complex{T} where T<:Rational) = DEFAULT_FORMATTERS[Complex{T} where T<:Rational] |
| 87 | +default_spec(::ComplexInteger) = DEFAULT_FORMATTERS[ComplexInteger] |
| 88 | +default_spec(::ComplexFloat) = DEFAULT_FORMATTERS[ComplexFloat] |
| 89 | +default_spec(::ComplexRational) = DEFAULT_FORMATTERS[ComplexRational] |
85 | 90 |
|
86 | 91 | default_spec(::Type{T}) where {T} =
|
87 | 92 | get(DEFAULT_FORMATTERS, T) do
|
@@ -224,11 +229,12 @@ for (t, c) in [(Integer,'d'),
|
224 | 229 | (AbstractFloat,'f'),
|
225 | 230 | (AbstractChar,'c'),
|
226 | 231 | (AbstractString,'s'),
|
227 |
| - (Complex{T} where T<:Integer, 'd' ), |
228 |
| - (Complex{T} where T<:AbstractFloat, 'f' )] |
| 232 | + (ComplexInteger,'d'), |
| 233 | + (ComplexFloat,'f')] |
229 | 234 | default_spec!(t, c)
|
230 | 235 | end
|
231 | 236 |
|
232 |
| -default_spec!(Number, 's', :right) |
| 237 | +default_spec!(Rational, 's', :right) |
233 | 238 | default_spec!(AbstractIrrational, 's', :right)
|
234 |
| -default_spec!(Complex{T} where T<:Rational, 's', :right) |
| 239 | +default_spec!(ComplexRational, 's', :right) |
| 240 | +default_spec!(Number, 's', :right) |
0 commit comments