
On Sun, Apr 3, 2011 at 8:28 PM, Lorenzo Caminiti <lorcaminiti@gmail.com> wrote:
On Sun, Apr 3, 2011 at 2:22 PM, Steven Watanabe <watanabesj@gmail.com> wrote:
AMDG
On 04/03/2011 11:13 AM, Lorenzo Caminiti wrote:
Boost.Local uses a special name `this_` to access the object `this` bound from the enclosing scope. Shall this name be `this_` or `_this` according to Boost practices?
struct c { void g(int x) { ... } void f() { void BOOST_LOCAL_FUNCTION_PARAMS( (int x) (bind this) ) { this_->g(x); //<<<<<<<<< Shall this be `_this->g(x);` instead? ... } BOOST_LOCAL_FUNCTIO_NAME(l) ... } ... };
In particular, some library uses _ postfix for statements like mpl::if_ (not mpl::_if) while other uses _ prefix for variables like phoenix::local_names::_f (not local_names::f_).
The convention is that _xxx is used for placeholders. xxx_ is used when xxx is a keyword.
I see, thanks. `this` is a keyword so Boost.Local should continue to use `this_` -- I'll add this to the docs rationale.
I use _this for the placeholder to the current lambda in Boost.Phoenix