@@ -27,7 +27,7 @@ defmodule ElixirSense.Core.References.Tracer do
2727 end )
2828 end
2929
30- def trace ( { kind , meta , module , name , arity } , env )
30+ def trace ( { kind , meta , module , name , arity } , % Macro.Env { } = env )
3131 when kind in [ :imported_function , :imported_macro , :remote_function , :remote_macro ] do
3232 register_call ( % {
3333 callee: { module , name , arity } ,
@@ -39,7 +39,7 @@ defmodule ElixirSense.Core.References.Tracer do
3939 :ok
4040 end
4141
42- def trace ( { kind , meta , name , arity } , env )
42+ def trace ( { kind , meta , name , arity } , % Macro.Env { } = env )
4343 when kind in [ :local_function , :local_macro ] do
4444 register_call ( % {
4545 callee: { env . module , name , arity } ,
@@ -51,6 +51,33 @@ defmodule ElixirSense.Core.References.Tracer do
5151 :ok
5252 end
5353
54+ def trace ( { :alias_reference , meta , module } , % Macro.Env { } = env ) do
55+ register_call ( % {
56+ callee: { module , nil , nil } ,
57+ file: env . file |> Path . relative_to_cwd ( ) ,
58+ line: meta [ :line ] ,
59+ column: meta [ :column ]
60+ } )
61+ end
62+
63+ def trace ( { :alias , meta , module , _as , _opts } , % Macro.Env { } = env ) do
64+ register_call ( % {
65+ callee: { module , nil , nil } ,
66+ file: env . file |> Path . relative_to_cwd ( ) ,
67+ line: meta [ :line ] ,
68+ column: meta [ :column ]
69+ } )
70+ end
71+
72+ def trace ( { kind , meta , module , _opts } , % Macro.Env { } = env ) when kind in [ :import , :require ] do
73+ register_call ( % {
74+ callee: { module , nil , nil } ,
75+ file: env . file |> Path . relative_to_cwd ( ) ,
76+ line: meta [ :line ] ,
77+ column: meta [ :column ]
78+ } )
79+ end
80+
5481 def trace ( _trace , _env ) do
5582 :ok
5683 end
0 commit comments