Haxe Code Cookbook

expression macro

Overview of Haxe snippets and tutorials tagged with expression macro.

  • This example executes a process on the system, compile-time. This allows to run a git command git rev-parse HEAD and use its result as the value.‥

  • This macro function automatically assigns parameters of method to local variables.‥

  • Sometimes failed assertion checks make it difficult to tell what went wrong. For debugging the programmer not only wants to know that a check failed, but also why it failed. This macro outputs the values of all sub-expressions.‥

  • Haxe makes it easy to define extensions for a typedef, but there is no easy way to combine the values of two or more structures to one, like {a:2} and {b:foo} to {a:2,b:foo}. The following macro does this for you.‥

  • The following macro function returns an array of all possible values of a given @:enum abstract type. Since it's not possible in runtime (because abstracts doesn't exist there), we need to use a macro for that.‥

  • Sometimes we have an instance of enum that is of known constructor (or we only accept that constructor) and we want to extract values from that instance. Normally, to do this, we have to use pattern matching (switch), however it's quite verbose, so we can instead use this macro static extension method that will generate switch for us.‥

  • This example shows:‥

  • This snippet demonstrates how to get, set, check for, and list compiler flags.‥

  • Json is quite a strict format. Ensure all comma's and quotes are correct using a macro function, which is executed while compiling.‥