Observable Flutter #35: Writing a code generator