text: 'use strict'
  
  const AbstractError = require('./AbstractError')
  
  /**
   * @extends AbstractError
   */
  class IllegalCallError extends AbstractError {
    static createForCallingAbstractMethod (methodName) {
      return new IllegalCallError(`Abstract method '${methodName}' must not be called.`)
    }
  
    /**
     * @param {string} message the error message
     */
    constructor (message) {
      super(AbstractError.ErrorNames.ILLEGAL_CALL, message)
    }
  }
  
  module.exports = IllegalCallError
  