Skip to content

fix #204 #205 #207#206

Open
pavel-orekhov wants to merge 11 commits into
zeromq:developfrom
pavel-orekhov:develop
Open

fix #204 #205 #207#206
pavel-orekhov wants to merge 11 commits into
zeromq:developfrom
pavel-orekhov:develop

Conversation

@pavel-orekhov

Copy link
Copy Markdown
  • add message::operator<< for message (AKA append) and for frame
  • tests for new methods
  • fix indent

Pavel Orekhov added 3 commits January 29, 2018 18:07
* add message::operator<< for message (AKA append) and for frame
* tests for new methods
* fix indent
  part 2: exception at loop.start()
  part 3: socket is not removed from items_
  via separate cb for close()
* testcases for it
@pavel-orekhov pavel-orekhov changed the title * add message::append() method to mitigate #204 fix #204 #205 Jan 29, 2018
@pavel-orekhov pavel-orekhov changed the title fix #204 #205 fix #204 #205 #207 Jan 31, 2018
Comment thread src/zmqpp/loop.hpp
void update();
};

typedef std::pair<zmq_pollitem_t, Callable> PollItemCallablePair;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

does changing these types break api backward compatibility?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think no. it's private type. But size of class will be changed, so recompile of clients is required.

bluca, please say me what is better:

  1. register onAfterRemove callback at add() time
  2. register onAfterRemove callback at remove() time

First method is implemented now. But second seems more clean for user and more simple to implement.

Comment thread src/zmqpp/loop.hpp
* See tests/test_loop.cpp: socket_closed_in_timer and socket_closed_after_remove_at_timer
*/
void add(socket_t& socket, Callable callable, short const event = poller::poll_in);
void add(socket_t& socket, Callable callable, short const event = poller::poll_in, Callable after_remove_cb = Callable(nullptr));

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

will this break ABI?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. Method's name will be mangled differently. Clients of libzmqpp need to be recompiled. But no changes at source code of clients.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants