code: function genInterpolator (name, inlineMaker, preface, jsEval) {
      const fn = class Interpolator extends BaseExpression {
          constructor (m) {
              checkMaxArguments(arguments, 1, name);
  
              m = implicitCast(m);
              super({ m });
          }
          eval (feature) {
              return jsEval(this.m.eval(feature));
          }
          _bindMetadata (meta) {
              super._bindMetadata(meta);
              if (this.m.type !== 'number') {
                  throw new CartoValidationError(
                      `Blending cannot be performed by '${this.m.type}'`,
                      CartoValidationErrorTypes.INCORRECT_TYPE);
              }
              this.type = 'number';
              this._setGenericGLSL(inline => inlineMaker(inline.m), preface);
          }
      };
      fn.type = 'interpolator';
      return fn;
  }
docs: Interpolators