constructor(partMaker, description) {
        /**
         * @type {!(function(!ShaderCoder): !ShaderPart)}
         * @private
         */
        this._partMaker = partMaker;
        /**
         * @type {!string}
         */
        this.description = description;
    }
@param {!function(!ShaderCoder) : !ShaderPart} partMaker
@param {!string} description