2016-05-21 6 views
0

Juliaでマクロがどこから来たのか、どうやって分かりますか?私は誰かのコードを見ていて、彼らは@debug("string")マクロを使っています。特定のファイルにロードされる場所を教えてくれるステートメントはありません。そのため、コード内のどこか他の場所にロードされていると仮定します。Juliaでマクロがどこにあるのですか?

私はジュリアのデバッグモジュールで推測するかもしれませんが、それはそのように使用されているようには見えません、それはロギングにもっと使用されているようですので、コードを介して。

答えて

3

マクロ位置は@whichマクロを使用して取得できます。これは0.5で導入された機能です。 @whichと同様に

julia> @which @printf("%0.2f", 1/3) 
@printf(args...) at printf.jl:1178 

、あなたは、プログラムの機能の場所を取得するには、ソースファイルと@functionlocを開くために@editを使用することができます。

2

キーボードショートカットshfit +でJulia replのヘルプモードに行くことができます。

help?> @debug 
    No documentation found. 

    @debug is a macro. 

    # 1 method for macro "@debug": 
    @debug(msg...) at /home/guo/.julia/v0.5/Logging/src/logging_macros.jl:11 

私はマルコ@debugがパッケージLogging.jlからおそらくあると思います。

関連する問題