Cog is a code generation tool. It lets you use pieces of Python code as generators in your source files to generate whatever code you need.
Cog transforms files in a very simple way: it finds chunks of Python code embedded in them, executes the Python code, and inserts its output back into the original file. The file can contain whatever text you like around the Python code. It will usually be source code.