cpp-common/bt2/field.hpp: use raw value proxy for scalar classes
authorPhilippe Proulx <eeppeliteloop@gmail.com>
Mon, 13 Nov 2023 20:32:19 +0000 (15:32 -0500)
committerSimon Marchi <simon.marchi@efficios.com>
Thu, 14 Dec 2023 15:57:04 +0000 (10:57 -0500)
commit7f7fbdb3f53e75d7c5fcdab092ebc819984ee499
treee9be08409cddb9a3fab398691870222bf0f0e87c
parentb3f060ed119961106d34da4db9071653a37f5c53
cpp-common/bt2/field.hpp: use raw value proxy for scalar classes

This patch makes field wrappers behave like value wrappers regarding
raw value access.

Now, the `*` operator of boolean, integer, floating point number, and
string fields return a raw value proxy to access the raw value:

    void f(const bt2::UnsignedIntegerField val) {
        *val = 23;
        std::cout << *val << std::endl;
    }

I didn't do it for `bt2::CommonBitArrayField` which is a scalar field,
but it's still an array, so it felt weird. Instead, use valueAsInteger()
or bitValue() depending on your use case.

Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Change-Id: I3bbcdc79a6dea781f720b7da8e18aea285d792b5
Reviewed-on: https://review.lttng.org/c/babeltrace/+/11371
Reviewed-by: Simon Marchi <simon.marchi@efficios.com>
src/cpp-common/bt2/field.hpp
This page took 0.027485 seconds and 4 git commands to generate.