Use composition rather than inheritance to differentiate between different operators...
-rw-r--r-- 38 .gitignore
drwxr-xr-x - examples
-rw-r--r-- 4230 generation.py
-rw-r--r-- 1702 integration_tests.py
-rw-r--r-- 472 main.py
-rw-r--r-- 9831 parsing.py
-rw-r--r-- 14 requirements.txt
drwxr-xr-x - templates
-rw-r--r-- 8443 tokenization.py
-rw-r--r-- 8316 transformation.py
-rw-r--r-- 642 util.py