evnty
Version:
0-Deps, simple, fast, for browser and node js reactive anonymous event library
1 lines • 911 B
Source Map (JSON)
{"version":3,"sources":["../src/callable.ts"],"sourcesContent":["import { Fn } from './types.js';\n/**\n * @internal\n */\nexport interface Callable<T extends unknown[], R> {\n (...args: T): R;\n}\n\n/**\n * An abstract class that extends the built-in Function class. It allows instances of the class\n * to be called as functions. When an instance of Callable is called as a function, it will\n * call the function passed to its constructor with the same arguments.\n * @internal\n */\n\nexport abstract class Callable<T, R> {\n constructor(func: Fn<T, R>) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-return\n return Object.setPrototypeOf(func, new.target.prototype);\n }\n}\n"],"names":["Callable","constructor","func","Object","setPrototypeOf","prototype"],"mappings":";;;;+BAesBA;;;eAAAA;;;AAAf,MAAeA;IACpBC,YAAYC,IAAc,CAAE;QAE1B,OAAOC,OAAOC,cAAc,CAACF,MAAM,WAAWG,SAAS;IACzD;AACF"}