X-Git-Url: http://xvm.mit.edu/gitweb/invirt/third/libt4.git/blobdiff_plain/4e881433f37417ccbda89c09ffdf936855d462d4..ebd5aef6dc92accb509b1cc67eaf72159f35cdfa:/rpc/marshall_wrap.h?ds=sidebyside diff --git a/rpc/marshall_wrap.h b/rpc/marshall_wrap.h index 8e10a75..4ba7a20 100644 --- a/rpc/marshall_wrap.h +++ b/rpc/marshall_wrap.h @@ -3,7 +3,7 @@ #include "marshall.h" -typedef function handler; +typedef function handler; // // Automatic marshalling wrappers for RPC handlers @@ -43,7 +43,7 @@ struct VerifyOnFailure { // One for function pointers... template -typename enable_if::value, RV>::type +typename enable_if::value, RV>::type inline invoke(RV, F f, void *, R & r, args_type & t, tuple_indices) { return f(r, move(get(t))...); } @@ -51,7 +51,7 @@ invoke(RV, F f, void *, R & r, args_type & t, tuple_indices) { // And one for pointers to member functions... template -typename enable_if::value, RV>::type +typename enable_if::value, RV>::type inline invoke(RV, F f, C *c, R & r, args_type & t, tuple_indices) { return (c->*f)(r, move(get(t))...); } @@ -71,7 +71,7 @@ template -struct marshalled_func_imp { +struct marshalled_func_imp { static inline handler *wrap(F f, C *c=nullptr) { // This type definition corresponds to an empty struct with // template parameters running from 0 up to (# args) - 1. @@ -82,7 +82,7 @@ struct marshalled_func_imp { using ArgsStorage = tuple::type...>; // Allocate a handler (i.e. function) to hold the lambda // which will unmarshall RPCs and call f. - return new handler([=](unmarshall &u, marshall &m) -> RV { + return new handler([=](unmarshall && u, marshall & m) -> RV { // Unmarshall each argument with the correct type and store the // result in a tuple. ArgsStorage t{u._grab::type>()...};