@glandjs/core
Version:
Glands is a web framework for Node.js (@core)
18 lines (17 loc) • 702 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MetadataScanner = void 0;
class MetadataScanner {
scanFromPrototype(prototype, handler) {
const methodNames = this.getAllFilteredMethodNames(prototype);
return methodNames.map(handler);
}
getAllFilteredMethodNames(prototype) {
const methodNames = Object.getOwnPropertyNames(prototype);
return methodNames.filter((method) => {
const descriptor = Object.getOwnPropertyDescriptor(prototype, method);
return descriptor && typeof descriptor.value === 'function' && method !== 'constructor';
});
}
}
exports.MetadataScanner = MetadataScanner;