Skip to content

Commit 5ddfac7

Browse files
committed
refactor: get rid of DB.symbols/1
1 parent 5ea9bac commit 5ddfac7

File tree

2 files changed

+25
-31
lines changed

2 files changed

+25
-31
lines changed

lib/next_ls.ex

+25-1
Original file line numberDiff line numberDiff line change
@@ -241,9 +241,33 @@ defmodule NextLS do
241241
end
242242
end
243243

244+
symbols = fn pid ->
245+
rows =
246+
DB.query(
247+
pid,
248+
~Q"""
249+
SELECT *
250+
FROM symbols
251+
WHERE source = 'user';
252+
""",
253+
[]
254+
)
255+
256+
for [_pk, module, file, type, name, line, column | _] <- rows do
257+
%{
258+
module: module,
259+
file: file,
260+
type: type,
261+
name: name,
262+
line: line,
263+
column: column
264+
}
265+
end
266+
end
267+
244268
symbols =
245269
dispatch(lsp.assigns.registry, :databases, fn entries ->
246-
for {pid, _} <- entries, symbol <- DB.symbols(pid), filter.(symbol.name) do
270+
for {pid, _} <- entries, symbol <- symbols.(pid), filter.(symbol.name) do
247271
name =
248272
if symbol.type != "defstruct" do
249273
"#{symbol.type} #{symbol.name}"

lib/next_ls/db.ex

-30
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,6 @@ defmodule NextLS.DB do
1313
@spec query(pid(), query(), list()) :: list()
1414
def query(server, query, args \\ []), do: GenServer.call(server, {:query, query, args}, :infinity)
1515

16-
@spec symbols(pid()) :: list(map())
17-
def symbols(server), do: GenServer.call(server, :symbols, :infinity)
18-
1916
@spec insert_symbol(pid(), map()) :: :ok
2017
def insert_symbol(server, payload), do: GenServer.cast(server, {:insert_symbol, payload})
2118

@@ -51,33 +48,6 @@ defmodule NextLS.DB do
5148
{:reply, rows, s}
5249
end
5350

54-
def handle_call(:symbols, _from, %{conn: conn} = s) do
55-
rows =
56-
__query__(
57-
{conn, s.logger},
58-
~Q"""
59-
SELECT *
60-
FROM symbols
61-
WHERE source = 'user';
62-
""",
63-
[]
64-
)
65-
66-
symbols =
67-
for [_pk, module, file, type, name, line, column | _] <- rows do
68-
%{
69-
module: module,
70-
file: file,
71-
type: type,
72-
name: name,
73-
line: line,
74-
column: column
75-
}
76-
end
77-
78-
{:reply, symbols, s}
79-
end
80-
8151
def handle_cast({:insert_symbol, symbol}, %{conn: conn} = s) do
8252
{:message_queue_len, count} = Process.info(self(), :message_queue_len)
8353
NextLS.DB.Activity.update(s.activity, count)

0 commit comments

Comments
 (0)