This file contains "shader operation" classes. Originally they were to represent basic language operations like adding, assignment, etc. That proved to be far too verbose when implementing shader features, so they became more generalized helper classes. Along with LangElement classes, they are the building blocks for the procedurally generated shaders.
Each shader is a linked list of LangElements. The list is generated when the features of the shader are processed. When all the features are processed, then ShaderGen prints them out by traversing the linked list of LangElement and calling their print() function.