summaryrefslogtreecommitdiff
path: root/src/Handle.cc
diff options
context:
space:
mode:
authorNicolas Noble <pixel@nobis-crew.org>2013-08-02 10:36:31 -0700
committerNicolas Noble <pixel@nobis-crew.org>2013-08-02 10:36:31 -0700
commitfdbddaa4873fda6e83b8894dd58f166ebde795c3 (patch)
treea5a203fd98e5b533d75dfbcc1db74f96aaac1b9b /src/Handle.cc
parent07f5a2245d7c15dfb6d716e307d2618a498886d9 (diff)
Refining a bit more the Future class.
Diffstat (limited to 'src/Handle.cc')
-rw-r--r--src/Handle.cc13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/Handle.cc b/src/Handle.cc
index 361561a..cc39f41 100644
--- a/src/Handle.cc
+++ b/src/Handle.cc
@@ -96,14 +96,11 @@ ssize_t Balau::Handle::forceWrite(const void * _buf, size_t count, Events::BaseE
Balau::Future<uint8_t> Balau::Handle::readU8() {
IO<Handle> t(this);
- auto func = [t]() mutable -> uint8_t {
- uint8_t r;
- t->read(&r, 1);
- return r;
- };
- Future<uint8_t> r;
- r.m_run = func;
- return r;
+ return Future<uint8_t>([t]() mutable {
+ uint8_t b;
+ t->read(&b, 1);
+ return b;
+ });
}
void Balau::Handle::rseek(off_t offset, int whence) throw (GeneralException) {