/
githubmirror
/
pm2
Обзор
Документация
Войти
/
githubmirror
/
pm2
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
examples/misc-examples/wrap.js
30 строк
823 B
Unitech
Update README.md and fully restructure tests
24 янв 2018, 14:43
24 янв 2018, 14:43
dcd190b
Код
Авторство
О чём код?
var debug = require('debug')('methods'); var Proxy = module.exports = { wrap : function(object, methods, hook) { var self = this; if (!Array.isArray(methods)) methods = [methods]; for (var i = 0; i < methods.length; ++i) { debug('Wrapping method:', methods[i]); var original = object[methods[i]]; if (!original) return debug('Method %s unknown', methods[i]); if (original.__axm_original) { debug('Already wrapped', methods[i]); if (methods[i] != '_load') return; } var hooked = hook(original); if (original.__axm_original) { hooked.__axm_original = original.__axm_original; } else { hooked.__axm_original = original; } object[methods[i]] = hooked; //debug('Method proxified'); } } };