use sdbusplus unpack syntax

Rather than defining a variable and then reading it from a message,
sdbusplus also supports directly unpack-ing from the message.  Use
this syntax instead as it is more efficient and succinct.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ic6aac8ff7c37f79f082363cf8ae59aafc5bc4831
diff --git a/functor.hpp b/functor.hpp
index ca5db90..36e4837 100644
--- a/functor.hpp
+++ b/functor.hpp
@@ -348,8 +348,8 @@
      */
     bool eval(sdbusplus::message_t& msg) const override
     {
-        std::variant<T> value;
-        msg.read(value);
+        auto value = msg.unpack<std::variant<T>>();
+
         return _condition(std::forward<T>(std::get<T>(value)));
     }