anykeyh / clear

Advanced ORM between postgreSQL and Crystal
https://github.com/anykeyh/clear
MIT License
272 stars 34 forks source link

Crystal 0.36 enum - Literal#to_json(x) must be implemented #209

Open polonski opened 3 years ago

polonski commented 3 years ago

creating a Clear.enum using crystal version 0.36.0 results in this error


There was a problem expanding macro 'enum'

Code in src/models/model_helper.cr:1:1

 1 | Clear.enum StatusType, "NEW", "DRAFT", "SUBMITTED", "AUTHORISED", "DELETED", "VOIDED", "PAID", "EXPIRED"
     ^
Called macro defined in lib/clear/src/clear/extensions/enum/enum.cr:133:3

 133 | macro enum(name, *values, &block)

Which expanded to:

 > 1 | struct StatusType < ::Clear::Enum
       ^
Error: abstract `def Clear::Expression::Literal#to_json(x)` must be implemented by StatusType