$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: Re: [boost] [constrained_value] Constrained Value review results
From: Robert Kawulak (robert.kawulak_at_[hidden])
Date: 2010-10-06 20:45:10
> From: Stewart, Robert
> My preference
> is to use "CT" for that (because its an abbreviation for "compile time"), though it is very terse and
> could mean other things in other contexts.
"ct" is indeed cryptic, but I think it won't be easily mistaken for something else (like "int" in "bounded_int" might be) and once
one gets to know it stands for "compile time" the names become quite clear:
bounded<int> // bounds specified at runtime
bounded_ct<int, 0, 10> // bounds specified as compile time constants
Looks good to me.
Maybe even "c" alone would suffice?
bounded_c<int, 0, 10>
Reminds me of boost::mpl::integral_c.
> instead of "bounded," use "bound," "bounds,"
Using "bound" or "bounds" seems misleading to me. The object represented by the type is a bounded value, not value of the bounds.
> or "constrained."
Constrained objects are a superset of bounded objects while we're looking for a name for a subset of bounded objects so using
"constrained" does not make sense.
> >From among these, my vote would be for "ct_bound_int" or "constant_bounds_int" and being short and
> clear.
The "int" suffix is unnecessary, the whole point was to replace it with something better. ;-)
> From: Christian Holmquist
> I think bounded_int or bounded_integral seems just fine.
bounded_integral is more precise than bounded_int, but still not exhaustive (integrals are not all possible types that can be used).
> From: Thorsten Ottosen
> bounded_int and bounded_float is fine with me too. Since the library is
> called constrained_value, contrained_int and constrained_float would be
> fine too.
Ditto about "constrained". And why "bounded_float"? I was thinking that for floats you would just use "bounded" template.
> From: Paul A. Bristow
> I also like the word 'static' - it implies 'fixed at compile time' to me,
> but I agree static has other possible implications.
How about "statically_bounded"?
> So
>
> fixed_bound is my suggestion, FWIW.
>
> fixed_bound<int, 0, 23>::type hour;
Ditto about "bound". And "fixed_bounded" looks weird, it's as if the value was itself fixed. But maybe it's not that bad?
Thanks for the replies and best regards,
Robert