docs: function FunctionCompiler() {
      var _this;
  
      _classCallCheck(this, FunctionCompiler);
  
      _this = _possibleConstructorReturn(this, _getPrototypeOf(FunctionCompiler).call(this));
      /**
       * Compile sequence.
       * @type {Array<function>}
       */
  
      _this._sequence = [_this._uncomment, _this._validate, _this._extract, _this._direct, _this._compile, _this._definehead, _this._injecthead, _this._macromize];
      /**
       * Options from Grunt.
       * @type {Map}
       */
  
      _this._options = null;
      /**
       * Hm.
       */
  
      _this._macros = null;
      /**
       * Mapping script tag attributes.
       * This may be put to future use.
       * @type {Map<string,string>}
       */
  
      _this._directives = null;
      /**
       * Processing intstructions.
       * @type {Array<Instruction>}
       */
  
      _this._instructions = null;
      /**
       * Compiled arguments list.
       * @type {Array<string>}
       */
  
      _this._params = null;
      /**
       * Tracking imported functions.
       * @type {Map<string,string>}
       */
  
      _this._functions = {};
      /**
       * Did compilation fail just yet?
       * @type {boolean}
       */
  
      _this._failed = false;
      return _this;
    }