libflitter/NamedService.js

/**
 * @module libflitter/NamedService
 */

const { Service } = require('flitter-di')
const ImplementationError = require('./errors/ImplementationError')

/**
 * A self-named service.
 * @extends module:flitter-di/src/Service~Service
 */
class NamedService extends Service {
    /**
     * Get the name of the service.
     * @return {string}
     */
    static get name() {
        throw new ImplementationError()
    }
}

module.exports = exports = NamedService