We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
__MODULE__
1 parent 71da1a2 commit 88605cfCopy full SHA for 88605cf
lib/iex/lib/iex/autocomplete.ex
@@ -381,16 +381,18 @@ defmodule IEx.Autocomplete do
381
case Code.Fragment.container_cursor_to_quoted(code) do
382
{:ok, quoted} ->
383
case Macro.path(quoted, &match?({:__cursor__, _, []}, &1)) do
384
- [cursor, {:%{}, _, pairs}, {:%, _, [{:__aliases__, _, aliases}, _map]} | _] ->
+ [cursor, {:%{}, _, pairs}, {:%, _, [{:__aliases__, _, aliases = [h | _]}, _map]} | _]
385
+ when is_atom(h) ->
386
container_context_struct(cursor, pairs, aliases, shell)
387
388
[
389
cursor,
390
pairs,
391
{:|, _, _},
392
{:%{}, _, _},
- {:%, _, [{:__aliases__, _, aliases}, _map]} | _
393
- ] ->
+ {:%, _, [{:__aliases__, _, aliases = [h | _]}, _map]} | _
394
+ ]
395
396
397
398
[cursor, pairs, {:|, _, [{variable, _, nil} | _]}, {:%{}, _, _} | _] ->
lib/iex/test/iex/autocomplete_test.exs
@@ -430,6 +430,9 @@ defmodule IEx.AutocompleteTest do
430
assert {:yes, ~c"ry: ", []} = expand(~c"%URI{path: \"foo\", que")
431
assert {:no, [], []} = expand(~c"%URI{path: \"foo\", unkno")
432
assert {:no, [], []} = expand(~c"%Unknown{path: \"foo\", unkno")
433
+
434
+ assert {:yes, [], _} = expand(~c"%__MODULE__{")
435
+ assert {:yes, [], _} = expand(~c"%__MODULE__.Some{")
436
end
437
438
test "completion for struct keys in update syntax" do
0 commit comments