`include "users.nimf" # writeFile("users.nim", generateType("Person", @["name", 
"job", "email"])) import macros macro writeFileAtCompileTime(filename: string, 
content: string): untyped = # This macro will generate code to write a file at 
compile time result = quote do: static: writeFile(`filename`, `content`) # 
Usage of the macro writeFileAtCompileTime("users.nim", generateType("Person", 
@["name", "job", "email"])) # Regular code continues here echo "File has been 
written at compile time" import users # let p = Person(name: "jk", job: 
"student", email: "...") let p = Person() echo p `

Run

Reply via email to