No. Column2 is not a constructor as it doesn't have the same name as the
type and only constructors are exported. Column2 could be used as a helper
function only visible within the body of the type:
julia> type Test4
a :: Int
Test5(x) = x * 2
Test4(x) = new(Test5(x) * Test5(x))
end
julia> Test4(2)
Test4(16)
julia> Test5
ERROR: Test5 not defined
julia> type Test6
a :: Int
Test7(x) = new(x * 2)
Test6(x) = Test7(x)
end
julia> Test6(10)
Test6(20)
On Wednesday, February 12, 2014 10:24:54 PM UTC-5, Fil Mackay wrote:
>
> julia> type Column
> a::Int
> Column2() = new(1)
> end
>
> julia> Column.names, Column.types
> ((:a,),(Int64,))
>
> julia> Column
> Column (constructor with 0 methods)
>
> As far as I can tell the Column2() has disappeared - should be an error?
>
>