Я пытаюсь написать протокол для типов String:
defprotocol MyString do
def from(data)
end
defimpl MyString, for: String do
def from(string) do
String.replace(string, ",", "-")
end
end
Это компилируется, но когда я пытаюсь вызвать MyString.from
для строки, я получаю
iex> MyString.from("foo,")
protocol MyString not implemented for "foo,", This protocol is implemented for: String
Я получаю эту ошибку, если реализую протокол для String.t
, String.Chars
и т. Д. Как мне это сделать?