Add tap-> that returns the value

Description

tap> returns whether the put was successful. Another variant that would often be useful is a threaded tap-> that returns the value. Open question is what to do on failure:

  • Assert tap> succeeds - if tap queue is full, you will know about it, but it will also alter the behavior of your program with an assertion error

  • Ignore tap> result - if tap queue is full, values will be silently dropped

I'm not sure which is better, I can see both, so I made patches for both and ask for screener's opinion.

Patches:

  • clj-2538-assert.patch - asserts tap> successful

  • clj-2538-drop.patch - ignores tap> result

Environment

None

Status

Assignee

Unassigned

Reporter

Alex Miller

Labels

Approval

Vetted

Patch

Code

Fix versions

Affects versions

Priority

Critical
Configure