Search code examples
macroscrystal-lang

Is there a way to see what a Crystal macro expands to?


I've a macro that refuses to work as expected and I was wondering if there was a way to see what it expands to, is there something like macroexpand-1 from lisp in Crystal? If so, how do I use it? Thanks!


Solution

  • Placing {% debug %} at the end of the macro will print it's contents at compile time.

    e.g.

    macro foo
      ...
      {% debug %}
    end