Skip to content

Commit bb3039c

Browse files
authored
Fix dialyzer invalid contract in line.ex (#648)
From dialyzer warning: ``` lib/language_server/providers/folding_range/line.ex:11:invalid_contract The @SPEC for the function does not match the success typing of the function. Function: ElixirLS.LanguageServer.Providers.FoldingRange.Line.format_string/1 Success typing: @SPEC format_string( binary() | %ElixirLS.LanguageServer.SourceFile{ :text => binary() | %ElixirLS.LanguageServer.SourceFile{ :text => binary() | %ElixirLS.LanguageServer.SourceFile{:text => binary() | map(), _ => _}, _ => _ }, _ => _ } ) :: [{binary(), {non_neg_integer(), nil | non_neg_integer()}, binary()}] ``` The root cause is `embellish_lines_with_metadata/1` return a list of `t()` but `format_string/1` said it returns a list of `cell()` which is incorrect.
1 parent c4b270c commit bb3039c

File tree

1 file changed

+1
-1
lines changed
  • apps/language_server/lib/language_server/providers/folding_range

1 file changed

+1
-1
lines changed

apps/language_server/lib/language_server/providers/folding_range/line.ex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ defmodule ElixirLS.LanguageServer.Providers.FoldingRange.Line do
88
@type cell :: {non_neg_integer(), non_neg_integer() | nil}
99
@type t :: {String.t(), cell(), String.t()}
1010

11-
@spec format_string(String.t()) :: [cell()]
11+
@spec format_string(String.t()) :: [t()]
1212
def format_string(text) do
1313
text
1414
|> SourceFile.lines()

0 commit comments

Comments
 (0)