docs: function addInstruction(definition, keywordFunc, _regenerateSchemas) {
    var valid = this._validateInstruction(definition);
    if (!valid) throw new Ajv.ValidationError(this._validateInstruction.errors);
    // TODO check instruction is unique
    this._instructions.push(definition);
    var keyword = definition.evaluate.validatorKeyword;
    this._evalKeywords[keyword] = keywordFunc;
    addAjvKeyword.call(this, keyword, 'object', true);
    if (_regenerateSchemas !== false) generateSchemas();
  }