michalmuskala / jason

A blazing fast JSON parser and generator in pure Elixir.
Other
1.58k stars 168 forks source link

@derive Jason.Encoder fails with a :_ (single underscore) struct field #189

Closed valpackett closed 3 weeks ago

valpackett commented 1 month ago

A single underscore is a valid atom, but this code

defmodule Thingy do
  @derive Jason.Encoder
  defstruct [
    :_
  ]
end

results in:

    error: invalid use of _. _ can only be used inside patterns to ignore values and cannot be used in expressions. Make sure you are inside a pattern or change it accordingly
    │
 10 │   defstruct [
    │   ^^^^^^^^^^^
    │
    └─ lib/thingy.ex:10: Jason.Encoder.Thingy.encode/2
michalmuskala commented 3 weeks ago

Fix published in 1.4.3