What about this? Would this satisfy the metaprogramming problem?

```js

Object.getOwnPropertyNames(obj)
.map(name => [name, obj[name]])
.filter(keepCorrectFunctions)
.map(([name, f]) => {
  obj mixin {
    [name + 'Async'](...args) {
      return new Promise((resolve, reject) =>
        f.call(this, ...args, (err, ...rest) =>
          err == null ?
            resolve(rest) :
            reject(err)));
    }
  }
});
```
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to