import { Stub } from '@efforting.tech/feature/stub'; /* export function Stub(meta, name, description, module_name, function_name) { return function stub() { throw new Error(`The feature "${name}" of "${meta.url}" is not enabled. Enable it by calling "${function_name}(${this.name})" imported from "${module_name}"`); //TODO - specific error } } */ class Thing { static from_stuff = Stub(import.meta, 'stuff-loader', 'Creates Thing from stuff', '@efforting.tech/stuff/loader', 'enable_stuff_loader'); } Thing.from_stuff() /* Error: The feature "stuff-loader" of "file:///srv/Projekt/efforting.tech/nodejs.esm-library/experiments/generic-parser-2.mjs" is not enabled. Enable it by calling "enable_stuff_loader(Thing)" imported from "@efforting.tech/stuff/loader" at Thing.stub [as from_stuff] (file:///srv/Projekt/efforting.tech/nodejs.esm-library/build/packages/feature/stub.mjs:4:9) at file:///srv/Projekt/efforting.tech/nodejs.esm-library/experiments/generic-parser-2.mjs:10:7 at ModuleJob.run (node:internal/modules/esm/module_job:430:25) at async node:internal/modules/esm/loader:639:26 at async asyncRunEntryPointWithESMLoader (node:internal/modules/run_main:101:5) */