[zeromq-dev] [Zproject] Unclear semantics of polymorphic

Michal Vyskocil michal.vyskocil at gmail.com
Mon Dec 14 22:19:24 CET 2015


the documentation on zproject API model has been recently updated and
new polymorphic argument for method appeared. I was looking for use,
but I fail to see any difference from singleton methods.

Only one hint from documentation is that polymorphic methods takes
void* as a first argument.

In czmq there are four examples
 * zactor_is is singleton
 * zactor_resolve is singleton
 * zsock_it is sinleton
 * zsock_resolve is singleton, polymorhpic

So question #1 - it sounds there is no way looking at function
definition to know if it is singleton/polymorphic or both. Am I right?

And question #2 - the only one binding who knows about polymorphic is
Ruby binding atm. Can anyone explain how this is used there? My Ruby
skills are too low too understood the code, but the generated code
looks the same for is and resolve in zsock.rb. So I fail to see the
purpose of it ...

best regards
     Michal Vyskocil

More information about the zeromq-dev mailing list