We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
__MODULE__
1 parent 8493f19 commit 25ab648Copy full SHA for 25ab648
lib/iex/lib/iex/autocomplete.ex
@@ -378,16 +378,18 @@ defmodule IEx.Autocomplete do
378
case Code.Fragment.container_cursor_to_quoted(code) do
379
{:ok, quoted} ->
380
case Macro.path(quoted, &match?({:__cursor__, _, []}, &1)) do
381
- [cursor, {:%{}, _, pairs}, {:%, _, [{:__aliases__, _, aliases}, _map]} | _] ->
+ [cursor, {:%{}, _, pairs}, {:%, _, [{:__aliases__, _, aliases = [h | _]}, _map]} | _]
382
+ when is_atom(h) ->
383
container_context_struct(cursor, pairs, aliases, shell)
384
385
[
386
cursor,
387
pairs,
388
{:|, _, _},
389
{:%{}, _, _},
- {:%, _, [{:__aliases__, _, aliases}, _map]} | _
390
- ] ->
+ {:%, _, [{:__aliases__, _, aliases = [h | _]}, _map]} | _
391
+ ]
392
393
394
395
[cursor, pairs, {:|, _, [{variable, _, nil} | _]}, {:%{}, _, _} | _] ->
lib/iex/test/iex/autocomplete_test.exs
@@ -416,6 +416,9 @@ defmodule IEx.AutocompleteTest do
416
assert {:yes, ~c"ry: ", []} = expand(~c"%URI{path: \"foo\", que")
417
assert {:no, [], []} = expand(~c"%URI{path: \"foo\", unkno")
418
assert {:no, [], []} = expand(~c"%Unknown{path: \"foo\", unkno")
419
+
420
+ assert {:yes, [], _} = expand(~c"%__MODULE__{")
421
+ assert {:yes, [], _} = expand(~c"%__MODULE__.Some{")
422
end
423
424
test "completion for struct keys in update syntax" do
0 commit comments