diff --git a/lib/elixir_sense.ex b/lib/elixir_sense.ex index 35c9031b..13d86549 100644 --- a/lib/elixir_sense.ex +++ b/lib/elixir_sense.ex @@ -64,7 +64,10 @@ defmodule ElixirSense do nil %{begin: begin_pos, end: end_pos} = context -> - metadata = Keyword.get_lazy(options, :metadata, fn -> Parser.parse_string(code, true, true, {line, column}) end) + metadata = + Keyword.get_lazy(options, :metadata, fn -> + Parser.parse_string(code, true, true, {line, column}) + end) env = Metadata.get_env(metadata, {line, column}) @@ -106,7 +109,10 @@ defmodule ElixirSense do nil context -> - metadata = Keyword.get_lazy(options, :metadata, fn -> Parser.parse_string(code, true, true, {line, column}) end) + metadata = + Keyword.get_lazy(options, :metadata, fn -> + Parser.parse_string(code, true, true, {line, column}) + end) env = Metadata.get_env(metadata, {line, column}) @@ -139,7 +145,10 @@ defmodule ElixirSense do [] context -> - metadata = Keyword.get_lazy(options, :metadata, fn -> Parser.parse_string(code, true, true, {line, column}) end) + metadata = + Keyword.get_lazy(options, :metadata, fn -> + Parser.parse_string(code, true, true, {line, column}) + end) env = Metadata.get_env(metadata, {line, column}) @@ -205,8 +214,12 @@ defmodule ElixirSense do @spec suggestions(String.t(), pos_integer, pos_integer, keyword()) :: [Suggestion.suggestion()] def suggestions(code, line, column, options \\ []) do hint = Source.prefix(code, line, column) - - metadata = Keyword.get_lazy(options, :metadata, fn -> Parser.parse_string(code, true, true, {line, column}) end) + + metadata = + Keyword.get_lazy(options, :metadata, fn -> + Parser.parse_string(code, true, true, {line, column}) + end) + {text_before, text_after} = Source.split_at(code, line, column) metadata = @@ -281,10 +294,15 @@ defmodule ElixirSense do ] } """ - @spec signature(String.t(), pos_integer, pos_integer, keyword) :: Signature.signature_info() | :none + @spec signature(String.t(), pos_integer, pos_integer, keyword) :: + Signature.signature_info() | :none def signature(code, line, column, options \\ []) do prefix = Source.text_before(code, line, column) - metadata = Keyword.get_lazy(options, :metadata, fn -> Parser.parse_string(code, true, true, {line, column}) end) + + metadata = + Keyword.get_lazy(options, :metadata, fn -> + Parser.parse_string(code, true, true, {line, column}) + end) env = Metadata.get_env(metadata, {line, column}) @@ -445,7 +463,10 @@ defmodule ElixirSense do %{ begin: {begin_line, begin_col} } = context -> - metadata = Keyword.get_lazy(options, :metadata, fn -> Parser.parse_string(code, true, true, {line, column}) end) + metadata = + Keyword.get_lazy(options, :metadata, fn -> + Parser.parse_string(code, true, true, {line, column}) + end) env = %State.Env{ diff --git a/lib/elixir_sense/core/parser.ex b/lib/elixir_sense/core/parser.ex index 10345e83..d14f414c 100644 --- a/lib/elixir_sense/core/parser.ex +++ b/lib/elixir_sense/core/parser.ex @@ -99,7 +99,8 @@ defmodule ElixirSense.Core.Parser do original_source, original_error, parser_options - ) when is_binary(source) do + ) + when is_binary(source) do case Code.string_to_quoted(source, parser_options) do {:ok, ast} -> {:ok, ast, source, original_error} @@ -108,7 +109,11 @@ defmodule ElixirSense.Core.Parser do error_to_report = original_error || {:error, :parse_error} # dbg(error) - modified_source = if(errors_threshold > 0, do: fix_parse_error(source, cursor_position, error), else: error) + modified_source = + if(errors_threshold > 0, + do: fix_parse_error(source, cursor_position, error), + else: error + ) if is_binary(modified_source) do do_string_to_ast( @@ -141,10 +146,10 @@ defmodule ElixirSense.Core.Parser do end def try_fix_line_not_found_by_inserting_marker( - modified_source, - {cursor_line_number, _} = cursor_position - ) - when is_integer(cursor_line_number) do + modified_source, + {cursor_line_number, _} = cursor_position + ) + when is_integer(cursor_line_number) do with {:ok, ast, _modified_source, _error} <- modified_source |> fix_line_not_found(cursor_line_number)