1    /** Get value of ${property.name}
2     *  ${property.description.strip()}
3     */
4    auto ${property.snake_case}()
5    {
6        return proxy.template get_property<\
7${property.cppTypeParam(interface.name)}>(context(), "${property.name}");
8    }
9
10% if 'const' not in property.flags and 'readonly' not in property.flags:
11    /** Set value of ${property.name}
12     *  ${property.description.strip()}
13     */
14    auto ${property.snake_case}(auto value)
15    {
16        return proxy.template set_property<\
17${property.cppTypeParam(interface.name)}>(
18            context(), "${property.name}", std::forward<decltype(value)>(value));
19    }
20% endif
21