Brandon,

You missed the part where Bill mentioned that variable_scope would take 
multiple arguments.  Your example:

> variable_scope_begin(scratch_preamble)
> variable_scope_begin(got_match)
> variable_scope_begin(not_trail)
> variable_scope_begin(empty)
> # [...]
> # my actual code, blah blah blah
> # [...]
> variable_scope_end(scratch_preamble)
> variable_scope_end(got_match)
> variable_scope_end(not_trail)
> variable_scope_end(empty)

would reduce to:

        variable_scope_begin(scratch_preamble got_match not_trail empty)
        # [...]
        # my actual code, blah blah blah
        # [...]
        variable_scope_end(scratch_preamble got_match not_trail empty)

Of course, if we could get braces into the mix, it would reduce to:

        variable_scope(scratch_preamble got_match not_trail empty)
        {
                # [...]
                # my actual code, blah blah blah
                # [...]
        }

I think that looks pretty good.  Even without the braces, the construct is 
optional, and it provides a significant improvement in variable safety.  I 
will trade typing a few more characters for variable safety any day.

Justin
_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to