แสดงวิธีการทั้งหมดของฟังก์ชั่นใน Julia


9

ฉันจะแสดงวิธีการทั้งหมดของฟังก์ชั่นใน Julia ( การแจกจ่ายหลายรายการ ) ได้อย่างไร

ตัวอย่างเช่นวิธีการทั้งหมดที่มีอยู่ใน namespace absสำหรับฟังก์ชั่น

คำตอบ:


9

methodsฟังก์ชั่นจะกลับตารางวิธีการสำหรับการทำงานที่ได้รับ:

julia> methods(abs)
# 13 methods for generic function "abs":
[1] abs(a::Pkg.Resolve.FieldValue) in Pkg.Resolve at /home/david/pkg/julia-bin/julia-1.4.0-rc1/share/julia/stdlib/v1.4/Pkg/src/Resolve/fieldvalues.jl:61
[2] abs(a::Pkg.Resolve.VersionWeight) in Pkg.Resolve at /home/david/pkg/julia-bin/julia-1.4.0-rc1/share/julia/stdlib/v1.4/Pkg/src/Resolve/versionweights.jl:36
[3] abs(::Missing) in Base at missing.jl:100
[4] abs(x::Float64) in Base at float.jl:528
...

ตั้งแต่ Julia 1.4 คุณสามารถกรองตารางวิธีโดยโมดูล ตัวอย่างเช่นการแสดงรายการวิธีการabsที่กำหนดไว้ในDatesโมดูล:

julia> methods(abs, Dates)
# 1 method for generic function "abs":
[1] abs(a::T) where T<:Dates.Period in Dates at /home/david/pkg/julia-bin/julia-1.4.0-rc1/share/julia/stdlib/v1.4/Dates/src/periods.jl:95
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.