Protocols rely on function names, which get shortened by code minifiers. Moreover, they (at least within one protocol definition) tend do be replaced by the same identifier, so in runtime an implementation of a minified protocol will only have one method (the one defined latest).
Possible fixes:
- Change protocols implementation to not rely on method names
- Set the
name property externally with Object.defineProperty():
Object.defineProperty(function() {}, 'name', {value: 'foo'})
Protocols rely on function names, which get shortened by code minifiers. Moreover, they (at least within one protocol definition) tend do be replaced by the same identifier, so in runtime an implementation of a minified protocol will only have one method (the one defined latest).
Possible fixes:
nameproperty externally withObject.defineProperty():