Это верно. На самом деле, нет версии оператора export
, которая позволила бы вам выбрать, какой метод экспортировать. Вы экспортируете функцию .
Вот код, который иллюстрирует поведение:
julia> module FooBar
export foo
foo(x::Int) = 2
foo(x::Char) = 'A'
end
Main.FooBar
julia> foo
ERROR: UndefVarError: foo not defined
julia> @which foo
ERROR: "foo" is not defined in module Main
Stacktrace:
[1] error(::String) at .\error.jl:33
[2] which(::Module, ::Symbol) at .\reflection.jl:1160
[3] top-level scope at REPL[15]:1
julia> using .FooBar
julia> @which foo
Main.FooBar
julia> methods(foo)
# 2 methods for generic function "foo":
[1] foo(x::Char) in Main.FooBar at REPL[13]:4
[2] foo(x::Int64) in Main.FooBar at REPL[13]:3