1
0
Fork 0
mirror of https://github.com/bolero-MURAKAMI/Sprout synced 2024-11-12 21:09:01 +00:00

fix defaulted default constructor

This commit is contained in:
bolero-MURAKAMI 2014-01-14 00:18:06 +09:00
parent 5aacc92a14
commit 7640eca894
82 changed files with 139 additions and 120 deletions

View file

@ -49,7 +49,7 @@ namespace sprout {
); );
} }
public: public:
sum_basic() = default; SPROUT_CONSTEXPR sum_basic() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
sum_basic(sum_basic const&) = default; sum_basic(sum_basic const&) = default;
explicit SPROUT_CONSTEXPR sum_basic(sum_type sum) explicit SPROUT_CONSTEXPR sum_basic(sum_type sum)
: sum_(sum) : sum_(sum)

View file

@ -78,7 +78,7 @@ namespace sprout {
value_type rate_; value_type rate_;
int_type samples_per_sec_; int_type samples_per_sec_;
public: public:
auto_pan_holder() = default; SPROUT_CONSTEXPR auto_pan_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
auto_pan_holder(auto_pan_holder const&) = default; auto_pan_holder(auto_pan_holder const&) = default;
SPROUT_CONSTEXPR auto_pan_holder( SPROUT_CONSTEXPR auto_pan_holder(
value_type const& depth, value_type const& rate, value_type const& depth, value_type const& rate,

View file

@ -27,7 +27,7 @@ namespace sprout {
private: private:
value_type value_; value_type value_;
public: public:
change_volume_holder() = default; SPROUT_CONSTEXPR change_volume_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
change_volume_holder(change_volume_holder const&) = default; change_volume_holder(change_volume_holder const&) = default;
explicit SPROUT_CONSTEXPR change_volume_holder(value_type const& value) explicit SPROUT_CONSTEXPR change_volume_holder(value_type const& value)
: value_(value) : value_(value)

View file

@ -83,7 +83,7 @@ namespace sprout {
value_type rate_; value_type rate_;
int_type samples_per_sec_; int_type samples_per_sec_;
public: public:
chorus_holder() = default; SPROUT_CONSTEXPR chorus_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
chorus_holder(chorus_holder const&) = default; chorus_holder(chorus_holder const&) = default;
SPROUT_CONSTEXPR chorus_holder( SPROUT_CONSTEXPR chorus_holder(
value_type const& d, value_type const& depth, value_type const& rate, value_type const& d, value_type const& depth, value_type const& rate,

View file

@ -26,7 +26,7 @@ namespace sprout {
value_type low_; value_type low_;
value_type up_; value_type up_;
public: public:
clip_holder() = default; SPROUT_CONSTEXPR clip_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
clip_holder(clip_holder const&) = default; clip_holder(clip_holder const&) = default;
explicit SPROUT_CONSTEXPR clip_holder(value_type const& low = -1, value_type const& up = 1) explicit SPROUT_CONSTEXPR clip_holder(value_type const& low = -1, value_type const& up = 1)
: low_(low), up_(up) : low_(low), up_(up)

View file

@ -78,7 +78,7 @@ namespace sprout {
value_type threshold_; value_type threshold_;
value_type ratio_; value_type ratio_;
public: public:
compress_holder() = default; SPROUT_CONSTEXPR compress_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
compress_holder(compress_holder const&) = default; compress_holder(compress_holder const&) = default;
SPROUT_CONSTEXPR compress_holder(value_type const& threshold, value_type const& ratio) SPROUT_CONSTEXPR compress_holder(value_type const& threshold, value_type const& ratio)
: threshold_(threshold), ratio_(ratio) : threshold_(threshold), ratio_(ratio)

View file

@ -27,7 +27,7 @@ namespace sprout {
value_type gain_; value_type gain_;
value_type level_; value_type level_;
public: public:
distort_holder() = default; SPROUT_CONSTEXPR distort_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
distort_holder(distort_holder const&) = default; distort_holder(distort_holder const&) = default;
SPROUT_CONSTEXPR distort_holder(value_type const& gain, value_type const& level) SPROUT_CONSTEXPR distort_holder(value_type const& gain, value_type const& level)
: gain_(gain), level_(level) : gain_(gain), level_(level)

View file

@ -28,7 +28,7 @@ namespace sprout {
value_type gain_; value_type gain_;
value_type level_; value_type level_;
public: public:
fuzz_holder() = default; SPROUT_CONSTEXPR fuzz_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
fuzz_holder(fuzz_holder const&) = default; fuzz_holder(fuzz_holder const&) = default;
SPROUT_CONSTEXPR fuzz_holder(value_type const& gain, value_type const& level) SPROUT_CONSTEXPR fuzz_holder(value_type const& gain, value_type const& level)
: gain_(gain), level_(level) : gain_(gain), level_(level)

View file

@ -71,7 +71,7 @@ namespace sprout {
private: private:
value_type threshold_; value_type threshold_;
public: public:
noise_gate_holder() = default; SPROUT_CONSTEXPR noise_gate_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
noise_gate_holder(noise_gate_holder const&) = default; noise_gate_holder(noise_gate_holder const&) = default;
explicit SPROUT_CONSTEXPR noise_gate_holder(value_type const& threshold) explicit SPROUT_CONSTEXPR noise_gate_holder(value_type const& threshold)
: threshold_(threshold) : threshold_(threshold)

View file

@ -55,7 +55,7 @@ namespace sprout {
value_type gain_; value_type gain_;
value_type level_; value_type level_;
public: public:
overdrive_holder() = default; SPROUT_CONSTEXPR overdrive_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
overdrive_holder(overdrive_holder const&) = default; overdrive_holder(overdrive_holder const&) = default;
SPROUT_CONSTEXPR overdrive_holder(value_type const& gain, value_type const& level) SPROUT_CONSTEXPR overdrive_holder(value_type const& gain, value_type const& level)
: gain_(gain), level_(level) : gain_(gain), level_(level)

View file

@ -78,7 +78,7 @@ namespace sprout {
value_type delay_; value_type delay_;
int_type samples_per_sec_; int_type samples_per_sec_;
public: public:
pseudo_stereo_holder() = default; SPROUT_CONSTEXPR pseudo_stereo_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
pseudo_stereo_holder(pseudo_stereo_holder const&) = default; pseudo_stereo_holder(pseudo_stereo_holder const&) = default;
explicit SPROUT_CONSTEXPR pseudo_stereo_holder( explicit SPROUT_CONSTEXPR pseudo_stereo_holder(
value_type const& delay, int_type samples_per_sec = 44100 value_type const& delay, int_type samples_per_sec = 44100

View file

@ -78,7 +78,7 @@ namespace sprout {
std::size_t repeat_; std::size_t repeat_;
int_type samples_per_sec_; int_type samples_per_sec_;
public: public:
reverb_holder() = default; SPROUT_CONSTEXPR reverb_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
reverb_holder(reverb_holder const&) = default; reverb_holder(reverb_holder const&) = default;
SPROUT_CONSTEXPR reverb_holder( SPROUT_CONSTEXPR reverb_holder(
value_type const& attenuation, value_type const& delay, value_type const& attenuation, value_type const& delay,

View file

@ -29,7 +29,7 @@ namespace sprout {
private: private:
sprout::value_holder<range2_type&> range_; sprout::value_holder<range2_type&> range_;
public: public:
superpose_holder() = default; SPROUT_CONSTEXPR superpose_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
superpose_holder(superpose_holder const&) = default; superpose_holder(superpose_holder const&) = default;
explicit SPROUT_CONSTEXPR superpose_holder(range2_type& range) explicit SPROUT_CONSTEXPR superpose_holder(range2_type& range)
: range_(range) : range_(range)

View file

@ -56,7 +56,7 @@ namespace sprout {
value_type rate_; value_type rate_;
int_type samples_per_sec_; int_type samples_per_sec_;
public: public:
tremolo_holder() = default; SPROUT_CONSTEXPR tremolo_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
tremolo_holder(tremolo_holder const&) = default; tremolo_holder(tremolo_holder const&) = default;
SPROUT_CONSTEXPR tremolo_holder(value_type const& depth, value_type const& rate, int_type samples_per_sec = 44100) SPROUT_CONSTEXPR tremolo_holder(value_type const& depth, value_type const& rate, int_type samples_per_sec = 44100)
: depth_(depth), rate_(rate), samples_per_sec_(samples_per_sec) : depth_(depth), rate_(rate), samples_per_sec_(samples_per_sec)

View file

@ -82,7 +82,7 @@ namespace sprout {
value_type rate_; value_type rate_;
int_type samples_per_sec_; int_type samples_per_sec_;
public: public:
vibrato_holder() = default; SPROUT_CONSTEXPR vibrato_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
vibrato_holder(vibrato_holder const&) = default; vibrato_holder(vibrato_holder const&) = default;
SPROUT_CONSTEXPR vibrato_holder( SPROUT_CONSTEXPR vibrato_holder(
value_type const& d, value_type const& depth, value_type const& rate, value_type const& d, value_type const& depth, value_type const& rate,

View file

@ -52,7 +52,7 @@ namespace sprout {
typedef typename generator_type::engine_type engine_type; typedef typename generator_type::engine_type engine_type;
typedef typename generator_type::distribution_type distribution_type; typedef typename generator_type::distribution_type distribution_type;
public: public:
white_noise_range() = default; SPROUT_CONSTEXPR white_noise_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
white_noise_range(white_noise_range const&) = default; white_noise_range(white_noise_range const&) = default;
explicit SPROUT_CONSTEXPR white_noise_range( explicit SPROUT_CONSTEXPR white_noise_range(
range_type& range, range_type& range,
@ -92,7 +92,7 @@ namespace sprout {
typedef typename generator_type::engine_type engine_type; typedef typename generator_type::engine_type engine_type;
typedef typename generator_type::distribution_type distribution_type; typedef typename generator_type::distribution_type distribution_type;
public: public:
white_noise_range() = default; SPROUT_CONSTEXPR white_noise_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
white_noise_range(white_noise_range const&) = default; white_noise_range(white_noise_range const&) = default;
explicit SPROUT_CONSTEXPR white_noise_range( explicit SPROUT_CONSTEXPR white_noise_range(
engine_type const& gen, engine_type const& gen,

View file

@ -60,7 +60,10 @@ namespace sprout {
first_type first_; first_type first_;
second_type second_; second_type second_;
public: public:
SPROUT_CONSTEXPR compressed_pair_impl() {} SPROUT_CONSTEXPR compressed_pair_impl()
: first_()
, second_()
{}
SPROUT_CONSTEXPR compressed_pair_impl(first_param_type x, second_param_type y) SPROUT_CONSTEXPR compressed_pair_impl(first_param_type x, second_param_type y)
: first_(x) : first_(x)
, second_(y) , second_(y)
@ -109,7 +112,9 @@ namespace sprout {
private: private:
second_type second_; second_type second_;
public: public:
SPROUT_CONSTEXPR compressed_pair_impl() {} SPROUT_CONSTEXPR compressed_pair_impl()
: second_()
{}
SPROUT_CONSTEXPR compressed_pair_impl(first_param_type x, second_param_type y) SPROUT_CONSTEXPR compressed_pair_impl(first_param_type x, second_param_type y)
: first_type(x) : first_type(x)
, second_(y) , second_(y)
@ -154,7 +159,10 @@ namespace sprout {
private: private:
first_type first_; first_type first_;
public: public:
SPROUT_CONSTEXPR compressed_pair_impl() {} SPROUT_CONSTEXPR compressed_pair_impl()
: first_()
, second_type()
{}
SPROUT_CONSTEXPR compressed_pair_impl(first_param_type x, second_param_type y) SPROUT_CONSTEXPR compressed_pair_impl(first_param_type x, second_param_type y)
: first_(x) : first_(x)
, second_type(y) , second_type(y)
@ -198,7 +206,10 @@ namespace sprout {
typedef typename sprout::detail::call_traits<first_type>::const_reference first_const_reference; typedef typename sprout::detail::call_traits<first_type>::const_reference first_const_reference;
typedef typename sprout::detail::call_traits<second_type>::const_reference second_const_reference; typedef typename sprout::detail::call_traits<second_type>::const_reference second_const_reference;
public: public:
SPROUT_CONSTEXPR compressed_pair_impl() {} SPROUT_CONSTEXPR compressed_pair_impl()
: first_type()
, second_type()
{}
SPROUT_CONSTEXPR compressed_pair_impl(first_param_type x, second_param_type y) SPROUT_CONSTEXPR compressed_pair_impl(first_param_type x, second_param_type y)
: first_type(x) : first_type(x)
, second_type(y) , second_type(y)
@ -239,7 +250,10 @@ namespace sprout {
private: private:
second_type second_; second_type second_;
public: public:
SPROUT_CONSTEXPR compressed_pair_impl() {} SPROUT_CONSTEXPR compressed_pair_impl()
: first_type()
, second_()
{}
SPROUT_CONSTEXPR compressed_pair_impl(first_param_type x, second_param_type y) SPROUT_CONSTEXPR compressed_pair_impl(first_param_type x, second_param_type y)
: first_type(x) : first_type(x)
, second_(y) , second_(y)
@ -278,7 +292,10 @@ namespace sprout {
first_type first_; first_type first_;
second_type second_; second_type second_;
public: public:
SPROUT_CONSTEXPR compressed_pair_impl() {} SPROUT_CONSTEXPR compressed_pair_impl()
: first_()
, second_()
{}
SPROUT_CONSTEXPR compressed_pair_impl(first_param_type x, second_param_type y) SPROUT_CONSTEXPR compressed_pair_impl(first_param_type x, second_param_type y)
: first_(x) : first_(x)
, second_(y) , second_(y)

View file

@ -62,8 +62,8 @@
# define SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL = default; # define SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL = default;
# define SPROUT_DEFAULTED_DESTRUCTOR_DECL = default; # define SPROUT_DEFAULTED_DESTRUCTOR_DECL = default;
#else // #ifndef SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS #else // #ifndef SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS
# define SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL {} # define SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL SPROUT_NOEXCEPT {}
# define SPROUT_DEFAULTED_DESTRUCTOR_DECL {} # define SPROUT_DEFAULTED_DESTRUCTOR_DECL SPROUT_NOEXCEPT {}
#endif // #ifndef SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS #endif // #ifndef SPROUT_CONFIG_DISABLE_DEFAULTED_FUNCTIONS
// //

View file

@ -21,7 +21,7 @@ namespace sprout {
protected: protected:
Result (*ptr_)(Arg); Result (*ptr_)(Arg);
public: public:
pointer_to_unary_function() = default; SPROUT_CONSTEXPR pointer_to_unary_function() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR pointer_to_unary_function(Result (*x)(Arg)) explicit SPROUT_CONSTEXPR pointer_to_unary_function(Result (*x)(Arg))
: ptr_(x) : ptr_(x)
{} {}
@ -43,7 +43,7 @@ namespace sprout {
protected: protected:
Result (*ptr_)(Arg1, Arg2); Result (*ptr_)(Arg1, Arg2);
public: public:
pointer_to_binary_function() = default; SPROUT_CONSTEXPR pointer_to_binary_function() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR pointer_to_binary_function(Result (*x)(Arg1, Arg2)) explicit SPROUT_CONSTEXPR pointer_to_binary_function(Result (*x)(Arg1, Arg2))
: ptr_(x) : ptr_(x)
{} {}

View file

@ -67,7 +67,7 @@ namespace sprout {
private: private:
bool flag_; bool flag_;
public: public:
boolean_flag() = default; SPROUT_CONSTEXPR boolean_flag() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
boolean_flag(boolean_flag const&) = default; boolean_flag(boolean_flag const&) = default;
SPROUT_CONSTEXPR boolean_flag(bool flag) SPROUT_CONSTEXPR boolean_flag(bool flag)
: flag_(flag) : flag_(flag)
@ -92,7 +92,7 @@ namespace sprout {
public: public:
SPROUT_STATIC_CONSTEXPR sprout::io::flags::fmtflags mask = Mask; SPROUT_STATIC_CONSTEXPR sprout::io::flags::fmtflags mask = Mask;
public: public:
field_flag() = default; SPROUT_CONSTEXPR field_flag() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
field_flag(field_flag const&) = default; field_flag(field_flag const&) = default;
}; };
template<sprout::io::flags::fmtflags Flag, sprout::io::flags::fmtflags Mask> template<sprout::io::flags::fmtflags Flag, sprout::io::flags::fmtflags Mask>
@ -320,7 +320,7 @@ namespace sprout {
sprout::value_holder<T const&> holder_; sprout::value_holder<T const&> holder_;
sprout::io::format_settings settings_; sprout::io::format_settings settings_;
public: public:
format_holder() = default; SPROUT_CONSTEXPR format_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
format_holder(format_holder const&) = default; format_holder(format_holder const&) = default;
explicit SPROUT_CONSTEXPR format_holder(T const& value) explicit SPROUT_CONSTEXPR format_holder(T const& value)
: holder_(value) : holder_(value)

View file

@ -50,7 +50,7 @@ namespace sprout {
protected: protected:
using base_type::container; using base_type::container;
public: public:
back_insert_iterator() = default; SPROUT_CONSTEXPR back_insert_iterator() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR back_insert_iterator(param_type x) explicit SPROUT_CONSTEXPR back_insert_iterator(param_type x)
: base_type(x) : base_type(x)
{} {}

View file

@ -45,7 +45,7 @@ namespace sprout {
value_type low; value_type low;
value_type up; value_type up;
public: public:
clamp_iterator() = default; SPROUT_CONSTEXPR clamp_iterator() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
clamp_iterator(clamp_iterator const&) = default; clamp_iterator(clamp_iterator const&) = default;
SPROUT_CONSTEXPR clamp_iterator(iterator_type it, value_type const& low, value_type const& up, Compare comp = Compare()) SPROUT_CONSTEXPR clamp_iterator(iterator_type it, value_type const& low, value_type const& up, Compare comp = Compare())
: current(it), comp(comp), low(low), up(up) : current(it), comp(comp), low(low), up(up)

View file

@ -50,7 +50,7 @@ namespace sprout {
protected: protected:
using base_type::container; using base_type::container;
public: public:
front_insert_iterator() = default; SPROUT_CONSTEXPR front_insert_iterator() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR front_insert_iterator(param_type x) explicit SPROUT_CONSTEXPR front_insert_iterator(param_type x)
: base_type(x) : base_type(x)
{} {}

View file

@ -42,7 +42,7 @@ namespace sprout {
protected: protected:
iterator_type current; iterator_type current;
public: public:
reverse_iterator() = default; SPROUT_CONSTEXPR reverse_iterator() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
SPROUT_CONSTEXPR reverse_iterator(reverse_iterator const& other) SPROUT_CONSTEXPR reverse_iterator(reverse_iterator const& other)
: current(other.current) : current(other.current)
{} {}

View file

@ -121,7 +121,7 @@ namespace sprout {
} }
#endif #endif
public: public:
uniform_01() = default; SPROUT_CONSTEXPR uniform_01() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR uniform_01(param_type const&) SPROUT_NOEXCEPT {} explicit SPROUT_CONSTEXPR uniform_01(param_type const&) SPROUT_NOEXCEPT {}
SPROUT_CONSTEXPR result_type min() const SPROUT_NOEXCEPT { SPROUT_CONSTEXPR result_type min() const SPROUT_NOEXCEPT {
return result_type(0); return result_type(0);

View file

@ -45,7 +45,7 @@ namespace sprout {
typedef typename base_type::range_type range_type; typedef typename base_type::range_type range_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
adjacent_filtered_range() = default; SPROUT_CONSTEXPR adjacent_filtered_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
adjacent_filtered_range(adjacent_filtered_range const&) = default; adjacent_filtered_range(adjacent_filtered_range const&) = default;
SPROUT_CONSTEXPR adjacent_filtered_range(Predicate pred, range_type& range) SPROUT_CONSTEXPR adjacent_filtered_range(Predicate pred, range_type& range)
: base_type( : base_type(
@ -65,7 +65,7 @@ namespace sprout {
private: private:
Predicate pred_; Predicate pred_;
public: public:
adjacent_filter_holder() = default; SPROUT_CONSTEXPR adjacent_filter_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
adjacent_filter_holder(adjacent_filter_holder const&) = default; adjacent_filter_holder(adjacent_filter_holder const&) = default;
SPROUT_CONSTEXPR adjacent_filter_holder(Predicate pred) SPROUT_CONSTEXPR adjacent_filter_holder(Predicate pred)
: pred_(pred) : pred_(pred)

View file

@ -48,7 +48,7 @@ namespace sprout {
typedef typename base_type::range2_type range2_type; typedef typename base_type::range2_type range2_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
alternated_range() = default; SPROUT_CONSTEXPR alternated_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
alternated_range(alternated_range const&) = default; alternated_range(alternated_range const&) = default;
SPROUT_CONSTEXPR alternated_range(range1_type& range1, range2_type& range2) SPROUT_CONSTEXPR alternated_range(range1_type& range1, range2_type& range2)
: base_type( : base_type(
@ -71,7 +71,7 @@ namespace sprout {
private: private:
sprout::value_holder<range2_type&> range_; sprout::value_holder<range2_type&> range_;
public: public:
alternate_holder() = default; SPROUT_CONSTEXPR alternate_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
alternate_holder(alternate_holder const&) = default; alternate_holder(alternate_holder const&) = default;
explicit SPROUT_CONSTEXPR alternate_holder(range2_type& range) explicit SPROUT_CONSTEXPR alternate_holder(range2_type& range)
: range_(range) : range_(range)

View file

@ -47,7 +47,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
amplitude_spectrum_range() = default; SPROUT_CONSTEXPR amplitude_spectrum_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
amplitude_spectrum_range(amplitude_spectrum_range const&) = default; amplitude_spectrum_range(amplitude_spectrum_range const&) = default;
explicit SPROUT_CONSTEXPR amplitude_spectrum_range(range_type& range) explicit SPROUT_CONSTEXPR amplitude_spectrum_range(range_type& range)
: base_type( : base_type(

View file

@ -47,7 +47,7 @@ namespace sprout {
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
typedef typename base_type::difference_type difference_type; typedef typename base_type::difference_type difference_type;
public: public:
blanked_range() = default; SPROUT_CONSTEXPR blanked_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
blanked_range(blanked_range const&) = default; blanked_range(blanked_range const&) = default;
explicit SPROUT_CONSTEXPR blanked_range(range_type& range) explicit SPROUT_CONSTEXPR blanked_range(range_type& range)
: base_type( : base_type(

View file

@ -44,7 +44,7 @@ namespace sprout {
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
typedef typename iterator::compare_type compare_type; typedef typename iterator::compare_type compare_type;
public: public:
clamped_range() = default; SPROUT_CONSTEXPR clamped_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
clamped_range(clamped_range const&) = default; clamped_range(clamped_range const&) = default;
explicit SPROUT_CONSTEXPR clamped_range( explicit SPROUT_CONSTEXPR clamped_range(
range_type& range, range_type& range,

View file

@ -33,7 +33,7 @@ namespace sprout {
typedef sprout::adaptors::detail::adapted_range_default<Range> base_type; typedef sprout::adaptors::detail::adapted_range_default<Range> base_type;
typedef typename base_type::range_type range_type; typedef typename base_type::range_type range_type;
public: public:
copied_range() = default; SPROUT_CONSTEXPR copied_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
copied_range(copied_range const&) = default; copied_range(copied_range const&) = default;
explicit SPROUT_CONSTEXPR copied_range(range_type& range) explicit SPROUT_CONSTEXPR copied_range(range_type& range)
: base_type( : base_type(
@ -57,7 +57,7 @@ namespace sprout {
private: private:
sprout::value_holder<result_type&> result_; sprout::value_holder<result_type&> result_;
public: public:
copy_holder() = default; SPROUT_CONSTEXPR copy_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
copy_holder(copy_holder const&) = default; copy_holder(copy_holder const&) = default;
explicit SPROUT_CONSTEXPR copy_holder(result_type& result) explicit SPROUT_CONSTEXPR copy_holder(result_type& result)
: result_(result) : result_(result)

View file

@ -40,7 +40,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
counting_range() = default; SPROUT_CONSTEXPR counting_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
counting_range(counting_range const&) = default; counting_range(counting_range const&) = default;
explicit SPROUT_CONSTEXPR counting_range(range_type& range) explicit SPROUT_CONSTEXPR counting_range(range_type& range)
: base_type( : base_type(
@ -83,7 +83,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
counting_range() = default; SPROUT_CONSTEXPR counting_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
counting_range(counting_range const&) = default; counting_range(counting_range const&) = default;
explicit SPROUT_CONSTEXPR counting_range(value_type const& first) explicit SPROUT_CONSTEXPR counting_range(value_type const& first)
: base_type( : base_type(

View file

@ -30,7 +30,7 @@ namespace sprout {
typedef sprout::range::range_container<Iterator> base_type; typedef sprout::range::range_container<Iterator> base_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
adapted_range_default() = default; SPROUT_CONSTEXPR adapted_range_default() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
adapted_range_default(adapted_range_default const&) = default; adapted_range_default(adapted_range_default const&) = default;
explicit SPROUT_CONSTEXPR adapted_range_default(iterator const& first, iterator const& last) explicit SPROUT_CONSTEXPR adapted_range_default(iterator const& first, iterator const& last)
: base_type(first, last) : base_type(first, last)

View file

@ -131,7 +131,7 @@ namespace sprout {
typedef sprout::range::range_container<Iterator> base_type; typedef sprout::range::range_container<Iterator> base_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
jointed_range_default() = default; SPROUT_CONSTEXPR jointed_range_default() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
jointed_range_default(jointed_range_default const&) = default; jointed_range_default(jointed_range_default const&) = default;
explicit SPROUT_CONSTEXPR jointed_range_default(iterator const& first, iterator const& last) explicit SPROUT_CONSTEXPR jointed_range_default(iterator const& first, iterator const& last)
: base_type(first, last) : base_type(first, last)

View file

@ -75,7 +75,7 @@ namespace sprout {
typedef sprout::range::range_container<Iterator> base_type; typedef sprout::range::range_container<Iterator> base_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
sized_range_default() = default; SPROUT_CONSTEXPR sized_range_default() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
sized_range_default(sized_range_default const&) = default; sized_range_default(sized_range_default const&) = default;
explicit SPROUT_CONSTEXPR sized_range_default(iterator const& first, iterator const& last) explicit SPROUT_CONSTEXPR sized_range_default(iterator const& first, iterator const& last)
: base_type(first, last) : base_type(first, last)

View file

@ -38,7 +38,7 @@ namespace sprout {
typedef typename base_type::range_type range_type; typedef typename base_type::range_type range_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
dft_range() = default; SPROUT_CONSTEXPR dft_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
dft_range(dft_range const&) = default; dft_range(dft_range const&) = default;
explicit SPROUT_CONSTEXPR dft_range(range_type& range) explicit SPROUT_CONSTEXPR dft_range(range_type& range)
: base_type( : base_type(

View file

@ -40,7 +40,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
filled_range() = default; SPROUT_CONSTEXPR filled_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
filled_range(filled_range const&) = default; filled_range(filled_range const&) = default;
SPROUT_CONSTEXPR filled_range( SPROUT_CONSTEXPR filled_range(
range_type& range, range_type& range,

View file

@ -45,7 +45,7 @@ namespace sprout {
typedef typename base_type::range_type range_type; typedef typename base_type::range_type range_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
filtered_range() = default; SPROUT_CONSTEXPR filtered_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
filtered_range(filtered_range const&) = default; filtered_range(filtered_range const&) = default;
SPROUT_CONSTEXPR filtered_range(Predicate pred, range_type& range) SPROUT_CONSTEXPR filtered_range(Predicate pred, range_type& range)
: base_type( : base_type(
@ -65,7 +65,7 @@ namespace sprout {
private: private:
Predicate pred_; Predicate pred_;
public: public:
filter_holder() = default; SPROUT_CONSTEXPR filter_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
filter_holder(filter_holder const&) = default; filter_holder(filter_holder const&) = default;
SPROUT_CONSTEXPR filter_holder(Predicate pred) SPROUT_CONSTEXPR filter_holder(Predicate pred)
: pred_(pred) : pred_(pred)

View file

@ -38,7 +38,7 @@ namespace sprout {
typedef typename base_type::range_type range_type; typedef typename base_type::range_type range_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
idft_range() = default; SPROUT_CONSTEXPR idft_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
idft_range(idft_range const&) = default; idft_range(idft_range const&) = default;
explicit SPROUT_CONSTEXPR idft_range(range_type& range) explicit SPROUT_CONSTEXPR idft_range(range_type& range)
: base_type( : base_type(

View file

@ -39,7 +39,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename iterator::index_type index_type; typedef typename iterator::index_type index_type;
public: public:
indexed_range() = default; SPROUT_CONSTEXPR indexed_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
indexed_range(indexed_range const&) = default; indexed_range(indexed_range const&) = default;
explicit SPROUT_CONSTEXPR indexed_range(range_type& range) explicit SPROUT_CONSTEXPR indexed_range(range_type& range)
: base_type( : base_type(
@ -65,7 +65,7 @@ namespace sprout {
private: private:
index_type index_; index_type index_;
public: public:
indexed_holder() = default; SPROUT_CONSTEXPR indexed_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
indexed_holder(indexed_holder const&) = default; indexed_holder(indexed_holder const&) = default;
explicit SPROUT_CONSTEXPR indexed_holder(index_type index) explicit SPROUT_CONSTEXPR indexed_holder(index_type index)
: index_(index) : index_(index)

View file

@ -46,7 +46,7 @@ namespace sprout {
typedef typename base_type::range2_type range2_type; typedef typename base_type::range2_type range2_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
jointed_range() = default; SPROUT_CONSTEXPR jointed_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
jointed_range(jointed_range const&) = default; jointed_range(jointed_range const&) = default;
SPROUT_CONSTEXPR jointed_range(range1_type& range1, range2_type& range2) SPROUT_CONSTEXPR jointed_range(range1_type& range1, range2_type& range2)
: base_type( : base_type(
@ -66,7 +66,7 @@ namespace sprout {
private: private:
sprout::value_holder<range2_type&> range_; sprout::value_holder<range2_type&> range_;
public: public:
joint_holder() = default; SPROUT_CONSTEXPR joint_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
joint_holder(joint_holder const&) = default; joint_holder(joint_holder const&) = default;
explicit SPROUT_CONSTEXPR joint_holder(range2_type& range) explicit SPROUT_CONSTEXPR joint_holder(range2_type& range)
: range_(range) : range_(range)

View file

@ -49,7 +49,7 @@ namespace sprout {
typedef typename base_type::range2_type range2_type; typedef typename base_type::range2_type range2_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
merged_range() = default; SPROUT_CONSTEXPR merged_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
merged_range(merged_range const&) = default; merged_range(merged_range const&) = default;
SPROUT_CONSTEXPR merged_range(range1_type& range1, range2_type& range2, Compare comp = Compare()) SPROUT_CONSTEXPR merged_range(range1_type& range1, range2_type& range2, Compare comp = Compare())
: base_type( : base_type(
@ -71,7 +71,7 @@ namespace sprout {
sprout::value_holder<range2_type&> range_; sprout::value_holder<range2_type&> range_;
Compare comp_; Compare comp_;
public: public:
merge_holder() = default; SPROUT_CONSTEXPR merge_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
merge_holder(merge_holder const&) = default; merge_holder(merge_holder const&) = default;
explicit SPROUT_CONSTEXPR merge_holder(range2_type& range, Compare comp = Compare()) explicit SPROUT_CONSTEXPR merge_holder(range2_type& range, Compare comp = Compare())
: range_(range) : range_(range)

View file

@ -38,7 +38,7 @@ namespace sprout {
typedef typename base_type::range_type range_type; typedef typename base_type::range_type range_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
outdirected_range() = default; SPROUT_CONSTEXPR outdirected_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
outdirected_range(outdirected_range const&) = default; outdirected_range(outdirected_range const&) = default;
explicit SPROUT_CONSTEXPR outdirected_range(range_type& range) explicit SPROUT_CONSTEXPR outdirected_range(range_type& range)
: base_type( : base_type(

View file

@ -47,7 +47,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
phase_spectrum_range() = default; SPROUT_CONSTEXPR phase_spectrum_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
phase_spectrum_range(phase_spectrum_range const&) = default; phase_spectrum_range(phase_spectrum_range const&) = default;
explicit SPROUT_CONSTEXPR phase_spectrum_range(range_type& range) explicit SPROUT_CONSTEXPR phase_spectrum_range(range_type& range)
: base_type( : base_type(

View file

@ -46,7 +46,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
removed_range() = default; SPROUT_CONSTEXPR removed_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
removed_range(removed_range const&) = default; removed_range(removed_range const&) = default;
SPROUT_CONSTEXPR removed_range(range_type& range, value_type const& value) SPROUT_CONSTEXPR removed_range(range_type& range, value_type const& value)
: base_type( : base_type(

View file

@ -46,7 +46,7 @@ namespace sprout {
typedef typename base_type::range_type range_type; typedef typename base_type::range_type range_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
removed_if_range() = default; SPROUT_CONSTEXPR removed_if_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
removed_if_range(removed_if_range const&) = default; removed_if_range(removed_if_range const&) = default;
SPROUT_CONSTEXPR removed_if_range(range_type& range, Predicate pred) SPROUT_CONSTEXPR removed_if_range(range_type& range, Predicate pred)
: base_type( : base_type(

View file

@ -46,7 +46,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
replaced_range() = default; SPROUT_CONSTEXPR replaced_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
replaced_range(replaced_range const&) = default; replaced_range(replaced_range const&) = default;
SPROUT_CONSTEXPR replaced_range(range_type& range, value_type const& old_value, value_type const& new_value) SPROUT_CONSTEXPR replaced_range(range_type& range, value_type const& old_value, value_type const& new_value)
: base_type( : base_type(

View file

@ -47,7 +47,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
replaced_if_range() = default; SPROUT_CONSTEXPR replaced_if_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
replaced_if_range(replaced_if_range const&) = default; replaced_if_range(replaced_if_range const&) = default;
SPROUT_CONSTEXPR replaced_if_range(range_type& range, Predicate pred, value_type const& new_value) SPROUT_CONSTEXPR replaced_if_range(range_type& range, Predicate pred, value_type const& new_value)
: base_type( : base_type(

View file

@ -38,7 +38,7 @@ namespace sprout {
typedef typename base_type::range_type range_type; typedef typename base_type::range_type range_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
reversed_range() = default; SPROUT_CONSTEXPR reversed_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
reversed_range(reversed_range const&) = default; reversed_range(reversed_range const&) = default;
explicit SPROUT_CONSTEXPR reversed_range(range_type& range) explicit SPROUT_CONSTEXPR reversed_range(range_type& range)
: base_type( : base_type(

View file

@ -41,7 +41,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
sawtooth_wave_range() = default; SPROUT_CONSTEXPR sawtooth_wave_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
sawtooth_wave_range(sawtooth_wave_range const&) = default; sawtooth_wave_range(sawtooth_wave_range const&) = default;
explicit SPROUT_CONSTEXPR sawtooth_wave_range( explicit SPROUT_CONSTEXPR sawtooth_wave_range(
range_type& range, range_type& range,
@ -79,7 +79,7 @@ namespace sprout {
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
typedef typename base_type::difference_type difference_type; typedef typename base_type::difference_type difference_type;
public: public:
sawtooth_wave_range() = default; SPROUT_CONSTEXPR sawtooth_wave_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
sawtooth_wave_range(sawtooth_wave_range const&) = default; sawtooth_wave_range(sawtooth_wave_range const&) = default;
explicit SPROUT_CONSTEXPR sawtooth_wave_range( explicit SPROUT_CONSTEXPR sawtooth_wave_range(
value_type const& frequency = 1, value_type const& frequency = 1,

View file

@ -49,7 +49,7 @@ namespace sprout {
typedef typename base_type::range2_type range2_type; typedef typename base_type::range2_type range2_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
set_difference_range() = default; SPROUT_CONSTEXPR set_difference_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
set_difference_range(set_difference_range const&) = default; set_difference_range(set_difference_range const&) = default;
SPROUT_CONSTEXPR set_difference_range(range1_type& range1, range2_type& range2, Compare comp = Compare()) SPROUT_CONSTEXPR set_difference_range(range1_type& range1, range2_type& range2, Compare comp = Compare())
: base_type( : base_type(
@ -71,7 +71,7 @@ namespace sprout {
sprout::value_holder<range2_type&> range_; sprout::value_holder<range2_type&> range_;
Compare comp_; Compare comp_;
public: public:
set_difference_holder() = default; SPROUT_CONSTEXPR set_difference_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
set_difference_holder(set_difference_holder const&) = default; set_difference_holder(set_difference_holder const&) = default;
explicit SPROUT_CONSTEXPR set_difference_holder(range2_type& range, Compare comp = Compare()) explicit SPROUT_CONSTEXPR set_difference_holder(range2_type& range, Compare comp = Compare())
: range_(range) : range_(range)

View file

@ -49,7 +49,7 @@ namespace sprout {
typedef typename base_type::range2_type range2_type; typedef typename base_type::range2_type range2_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
set_intersection_range() = default; SPROUT_CONSTEXPR set_intersection_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
set_intersection_range(set_intersection_range const&) = default; set_intersection_range(set_intersection_range const&) = default;
SPROUT_CONSTEXPR set_intersection_range(range1_type& range1, range2_type& range2, Compare comp = Compare()) SPROUT_CONSTEXPR set_intersection_range(range1_type& range1, range2_type& range2, Compare comp = Compare())
: base_type( : base_type(
@ -71,7 +71,7 @@ namespace sprout {
sprout::value_holder<range2_type&> range_; sprout::value_holder<range2_type&> range_;
Compare comp_; Compare comp_;
public: public:
set_intersection_holder() = default; SPROUT_CONSTEXPR set_intersection_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
set_intersection_holder(set_intersection_holder const&) = default; set_intersection_holder(set_intersection_holder const&) = default;
explicit SPROUT_CONSTEXPR set_intersection_holder(range2_type& range, Compare comp = Compare()) explicit SPROUT_CONSTEXPR set_intersection_holder(range2_type& range, Compare comp = Compare())
: range_(range) : range_(range)

View file

@ -49,7 +49,7 @@ namespace sprout {
typedef typename base_type::range2_type range2_type; typedef typename base_type::range2_type range2_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
set_symmetric_difference_range() = default; SPROUT_CONSTEXPR set_symmetric_difference_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
set_symmetric_difference_range(set_symmetric_difference_range const&) = default; set_symmetric_difference_range(set_symmetric_difference_range const&) = default;
SPROUT_CONSTEXPR set_symmetric_difference_range(range1_type& range1, range2_type& range2, Compare comp = Compare()) SPROUT_CONSTEXPR set_symmetric_difference_range(range1_type& range1, range2_type& range2, Compare comp = Compare())
: base_type( : base_type(
@ -71,7 +71,7 @@ namespace sprout {
sprout::value_holder<range2_type&> range_; sprout::value_holder<range2_type&> range_;
Compare comp_; Compare comp_;
public: public:
set_symmetric_difference_holder() = default; SPROUT_CONSTEXPR set_symmetric_difference_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
set_symmetric_difference_holder(set_symmetric_difference_holder const&) = default; set_symmetric_difference_holder(set_symmetric_difference_holder const&) = default;
explicit SPROUT_CONSTEXPR set_symmetric_difference_holder(range2_type& range, Compare comp = Compare()) explicit SPROUT_CONSTEXPR set_symmetric_difference_holder(range2_type& range, Compare comp = Compare())
: range_(range) : range_(range)

View file

@ -49,7 +49,7 @@ namespace sprout {
typedef typename base_type::range2_type range2_type; typedef typename base_type::range2_type range2_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
set_union_range() = default; SPROUT_CONSTEXPR set_union_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
set_union_range(set_union_range const&) = default; set_union_range(set_union_range const&) = default;
SPROUT_CONSTEXPR set_union_range(range1_type& range1, range2_type& range2, Compare comp = Compare()) SPROUT_CONSTEXPR set_union_range(range1_type& range1, range2_type& range2, Compare comp = Compare())
: base_type( : base_type(
@ -71,7 +71,7 @@ namespace sprout {
sprout::value_holder<range2_type&> range_; sprout::value_holder<range2_type&> range_;
Compare comp_; Compare comp_;
public: public:
set_union_holder() = default; SPROUT_CONSTEXPR set_union_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
set_union_holder(set_union_holder const&) = default; set_union_holder(set_union_holder const&) = default;
explicit SPROUT_CONSTEXPR set_union_holder(range2_type& range, Compare comp = Compare()) explicit SPROUT_CONSTEXPR set_union_holder(range2_type& range, Compare comp = Compare())
: range_(range) : range_(range)

View file

@ -41,7 +41,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
sinusoidal_range() = default; SPROUT_CONSTEXPR sinusoidal_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
sinusoidal_range(sinusoidal_range const&) = default; sinusoidal_range(sinusoidal_range const&) = default;
explicit SPROUT_CONSTEXPR sinusoidal_range( explicit SPROUT_CONSTEXPR sinusoidal_range(
range_type& range, range_type& range,
@ -79,7 +79,7 @@ namespace sprout {
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
typedef typename base_type::difference_type difference_type; typedef typename base_type::difference_type difference_type;
public: public:
sinusoidal_range() = default; SPROUT_CONSTEXPR sinusoidal_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
sinusoidal_range(sinusoidal_range const&) = default; sinusoidal_range(sinusoidal_range const&) = default;
explicit SPROUT_CONSTEXPR sinusoidal_range( explicit SPROUT_CONSTEXPR sinusoidal_range(
value_type const& frequency = 1, value_type const& frequency = 1,

View file

@ -42,7 +42,7 @@ namespace sprout {
typedef typename base_type::range_type range_type; typedef typename base_type::range_type range_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
size_enumed_range() = default; SPROUT_CONSTEXPR size_enumed_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
size_enumed_range(size_enumed_range const&) = default; size_enumed_range(size_enumed_range const&) = default;
explicit SPROUT_CONSTEXPR size_enumed_range(range_type& range) explicit SPROUT_CONSTEXPR size_enumed_range(range_type& range)
: base_type( : base_type(
@ -72,7 +72,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
size_enumed_range() = default; SPROUT_CONSTEXPR size_enumed_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
size_enumed_range(size_enumed_range const&) = default; size_enumed_range(size_enumed_range const&) = default;
explicit SPROUT_CONSTEXPR size_enumed_range( explicit SPROUT_CONSTEXPR size_enumed_range(
range_type& range, range_type& range,
@ -101,7 +101,7 @@ namespace sprout {
size_type sep_size_; size_type sep_size_;
bool omit_last_; bool omit_last_;
public: public:
size_enum_holder() = default; SPROUT_CONSTEXPR size_enum_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
size_enum_holder(size_enum_holder const&) = default; size_enum_holder(size_enum_holder const&) = default;
explicit SPROUT_CONSTEXPR size_enum_holder(size_type size, bool omit_last = false) explicit SPROUT_CONSTEXPR size_enum_holder(size_type size, bool omit_last = false)
: sep_size_(size) : sep_size_(size)

View file

@ -33,7 +33,7 @@ namespace sprout {
typedef typename base_type::range_type range_type; typedef typename base_type::range_type range_type;
typedef typename base_type::size_type size_type; typedef typename base_type::size_type size_type;
public: public:
sized_range() = default; SPROUT_CONSTEXPR sized_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
sized_range(sized_range const&) = default; sized_range(sized_range const&) = default;
explicit SPROUT_CONSTEXPR sized_range(range_type& range) explicit SPROUT_CONSTEXPR sized_range(range_type& range)
: base_type( : base_type(

View file

@ -41,7 +41,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
square_wave_range() = default; SPROUT_CONSTEXPR square_wave_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
square_wave_range(square_wave_range const&) = default; square_wave_range(square_wave_range const&) = default;
explicit SPROUT_CONSTEXPR square_wave_range( explicit SPROUT_CONSTEXPR square_wave_range(
range_type& range, range_type& range,
@ -83,7 +83,7 @@ namespace sprout {
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
typedef typename base_type::difference_type difference_type; typedef typename base_type::difference_type difference_type;
public: public:
square_wave_range() = default; SPROUT_CONSTEXPR square_wave_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
square_wave_range(square_wave_range const&) = default; square_wave_range(square_wave_range const&) = default;
explicit SPROUT_CONSTEXPR square_wave_range( explicit SPROUT_CONSTEXPR square_wave_range(
value_type const& frequency = 1, value_type const& frequency = 1,

View file

@ -41,7 +41,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::difference_type difference_type; typedef typename base_type::difference_type difference_type;
public: public:
steps_range() = default; SPROUT_CONSTEXPR steps_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
steps_range(steps_range const&) = default; steps_range(steps_range const&) = default;
explicit SPROUT_CONSTEXPR steps_range(range_type& range) explicit SPROUT_CONSTEXPR steps_range(range_type& range)
: base_type( : base_type(
@ -74,7 +74,7 @@ namespace sprout {
difference_type width_; difference_type width_;
difference_type init_; difference_type init_;
public: public:
step_holder() = default; SPROUT_CONSTEXPR step_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
step_holder(step_holder const&) = default; step_holder(step_holder const&) = default;
explicit SPROUT_CONSTEXPR step_holder(difference_type width, difference_type init = 0) explicit SPROUT_CONSTEXPR step_holder(difference_type width, difference_type init = 0)
: width_(width), init_(init) : width_(width), init_(init)

View file

@ -46,7 +46,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
to_lower_range() = default; SPROUT_CONSTEXPR to_lower_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
to_lower_range(to_lower_range const&) = default; to_lower_range(to_lower_range const&) = default;
explicit SPROUT_CONSTEXPR to_lower_range(range_type& range) explicit SPROUT_CONSTEXPR to_lower_range(range_type& range)
: base_type( : base_type(

View file

@ -46,7 +46,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
to_upper_range() = default; SPROUT_CONSTEXPR to_upper_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
to_upper_range(to_upper_range const&) = default; to_upper_range(to_upper_range const&) = default;
explicit SPROUT_CONSTEXPR to_upper_range(range_type& range) explicit SPROUT_CONSTEXPR to_upper_range(range_type& range)
: base_type( : base_type(

View file

@ -49,7 +49,7 @@ namespace sprout {
> base_type; > base_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
transformed_range() = default; SPROUT_CONSTEXPR transformed_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
transformed_range(transformed_range const&) = default; transformed_range(transformed_range const&) = default;
SPROUT_CONSTEXPR transformed_range(BinaryFunction func, range1_type& range1, range2_type& range2) SPROUT_CONSTEXPR transformed_range(BinaryFunction func, range1_type& range1, range2_type& range2)
: base_type( : base_type(
@ -81,7 +81,7 @@ namespace sprout {
> base_type; > base_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
transformed_range() = default; SPROUT_CONSTEXPR transformed_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
transformed_range(transformed_range const&) = default; transformed_range(transformed_range const&) = default;
SPROUT_CONSTEXPR transformed_range(UnaryFunction func, range1_type& range) SPROUT_CONSTEXPR transformed_range(UnaryFunction func, range1_type& range)
: base_type( : base_type(
@ -103,7 +103,7 @@ namespace sprout {
BinaryFunction func_; BinaryFunction func_;
sprout::value_holder<range2_type&> range_; sprout::value_holder<range2_type&> range_;
public: public:
transform_holder() = default; SPROUT_CONSTEXPR transform_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
transform_holder(transform_holder const&) = default; transform_holder(transform_holder const&) = default;
SPROUT_CONSTEXPR transform_holder(BinaryFunction func, range2_type& range) SPROUT_CONSTEXPR transform_holder(BinaryFunction func, range2_type& range)
: func_(func) : func_(func)
@ -123,7 +123,7 @@ namespace sprout {
private: private:
UnaryFunction func_; UnaryFunction func_;
public: public:
transform_holder() = default; SPROUT_CONSTEXPR transform_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
transform_holder(transform_holder const&) = default; transform_holder(transform_holder const&) = default;
explicit SPROUT_CONSTEXPR transform_holder(UnaryFunction func) explicit SPROUT_CONSTEXPR transform_holder(UnaryFunction func)
: func_(func) : func_(func)

View file

@ -41,7 +41,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
public: public:
triangle_wave_range() = default; SPROUT_CONSTEXPR triangle_wave_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
triangle_wave_range(triangle_wave_range const&) = default; triangle_wave_range(triangle_wave_range const&) = default;
explicit SPROUT_CONSTEXPR triangle_wave_range( explicit SPROUT_CONSTEXPR triangle_wave_range(
range_type& range, range_type& range,
@ -79,7 +79,7 @@ namespace sprout {
typedef typename base_type::value_type value_type; typedef typename base_type::value_type value_type;
typedef typename base_type::difference_type difference_type; typedef typename base_type::difference_type difference_type;
public: public:
triangle_wave_range() = default; SPROUT_CONSTEXPR triangle_wave_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
triangle_wave_range(triangle_wave_range const&) = default; triangle_wave_range(triangle_wave_range const&) = default;
explicit SPROUT_CONSTEXPR triangle_wave_range( explicit SPROUT_CONSTEXPR triangle_wave_range(
value_type const& frequency = 1, value_type const& frequency = 1,

View file

@ -47,7 +47,7 @@ namespace sprout {
typedef typename base_type::range_type range_type; typedef typename base_type::range_type range_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
uniqued_range() = default; SPROUT_CONSTEXPR uniqued_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
uniqued_range(uniqued_range const&) = default; uniqued_range(uniqued_range const&) = default;
SPROUT_CONSTEXPR uniqued_range(range_type& range, Predicate pred) SPROUT_CONSTEXPR uniqued_range(range_type& range, Predicate pred)
: base_type( : base_type(

View file

@ -39,7 +39,7 @@ namespace sprout {
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
typedef typename iterator::param_type param_type; typedef typename iterator::param_type param_type;
public: public:
valued_range() = default; SPROUT_CONSTEXPR valued_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
valued_range(valued_range const&) = default; valued_range(valued_range const&) = default;
SPROUT_CONSTEXPR valued_range(param_type param, range_type& range) SPROUT_CONSTEXPR valued_range(param_type param, range_type& range)
: base_type( : base_type(
@ -62,7 +62,7 @@ namespace sprout {
private: private:
holder_type holder_; holder_type holder_;
public: public:
valued_holder() = default; SPROUT_CONSTEXPR valued_holder() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
valued_holder(valued_holder const&) = default; valued_holder(valued_holder const&) = default;
explicit SPROUT_CONSTEXPR valued_holder(param_type param) explicit SPROUT_CONSTEXPR valued_holder(param_type param)
: holder_(param) : holder_(param)

View file

@ -294,7 +294,7 @@ namespace sprout {
} }
public: public:
// construct/copy/destroy: // construct/copy/destroy:
basic_string() = default; SPROUT_CONSTEXPR basic_string() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
basic_string(basic_string const&) = default; basic_string(basic_string const&) = default;
template<std::size_t N2, typename Enable = typename std::enable_if<(N2 < N)>::type> template<std::size_t N2, typename Enable = typename std::enable_if<(N2 < N)>::type>
SPROUT_CONSTEXPR basic_string(basic_string<T, N2, Traits> const& str) SPROUT_CONSTEXPR basic_string(basic_string<T, N2, Traits> const& str)

View file

@ -211,7 +211,7 @@ namespace sprout {
using impl_type::to_last_; using impl_type::to_last_;
public: public:
// construct/copy/destroy: // construct/copy/destroy:
sub_array() = default; SPROUT_CONSTEXPR sub_array() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
sub_array(sub_array const&) = default; sub_array(sub_array const&) = default;
SPROUT_CONSTEXPR sub_array(param_type arr, const_iterator first, const_iterator last) SPROUT_CONSTEXPR sub_array(param_type arr, const_iterator first, const_iterator last)
: impl_type( : impl_type(

View file

@ -55,7 +55,7 @@ namespace sprout {
return f_(sprout::tuples::get<Indexes>(sprout::forward<Tuple>(t))...); return f_(sprout::tuples::get<Indexes>(sprout::forward<Tuple>(t))...);
} }
public: public:
fused() = default; SPROUT_CONSTEXPR fused() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
fused(fused const&) = default; fused(fused const&) = default;
explicit SPROUT_CONSTEXPR fused(F f) explicit SPROUT_CONSTEXPR fused(F f)
: f_(f) : f_(f)

View file

@ -114,7 +114,7 @@ namespace sprout {
protected: protected:
SPROUT_CXX14_CONSTEXPR void swap(tuple_impl&) SPROUT_NOEXCEPT {} SPROUT_CXX14_CONSTEXPR void swap(tuple_impl&) SPROUT_NOEXCEPT {}
public: public:
tuple_impl() = default; SPROUT_CONSTEXPR tuple_impl() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
template<typename... UTypes> template<typename... UTypes>
explicit SPROUT_CONSTEXPR tuple_impl(UTypes&&...) SPROUT_NOEXCEPT {} explicit SPROUT_CONSTEXPR tuple_impl(UTypes&&...) SPROUT_NOEXCEPT {}
tuple_impl(tuple_impl const&) = default; tuple_impl(tuple_impl const&) = default;
@ -439,7 +439,7 @@ namespace sprout {
class tuple<> { class tuple<> {
public: public:
// tuple construction // tuple construction
tuple() = default; SPROUT_CONSTEXPR tuple() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
tuple(tuple const&) = default; tuple(tuple const&) = default;
tuple(tuple&&) = default; tuple(tuple&&) = default;
template<typename... UTypes> template<typename... UTypes>

View file

@ -24,7 +24,7 @@ namespace sprout {
presult_type presult_; presult_type presult_;
Context ctx_; Context ctx_;
public: public:
eval_result() = default; SPROUT_CONSTEXPR eval_result() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
SPROUT_CONSTEXPR eval_result( SPROUT_CONSTEXPR eval_result(
bool success, bool success,
Iterator current, Iterator current,

View file

@ -47,7 +47,7 @@ namespace sprout {
private: private:
T t_; T t_;
public: public:
lit_char_p() = default; SPROUT_CONSTEXPR lit_char_p() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR lit_char_p(T const& t) explicit SPROUT_CONSTEXPR lit_char_p(T const& t)
: t_(t) : t_(t)
{} {}
@ -104,7 +104,7 @@ namespace sprout {
private: private:
T t_; T t_;
public: public:
char_p() = default; SPROUT_CONSTEXPR char_p() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR char_p(T const& t) explicit SPROUT_CONSTEXPR char_p(T const& t)
: t_(t) : t_(t)
{} {}
@ -145,7 +145,7 @@ namespace sprout {
T f_; T f_;
T l_; T l_;
public: public:
char_range_p() = default; SPROUT_CONSTEXPR char_range_p() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
SPROUT_CONSTEXPR char_range_p(T const& f, T const& l) SPROUT_CONSTEXPR char_range_p(T const& f, T const& l)
: f_(f), l_(l) : f_(f), l_(l)
{} {}
@ -185,7 +185,7 @@ namespace sprout {
private: private:
T t_; T t_;
public: public:
char_set_p() = default; SPROUT_CONSTEXPR char_set_p() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR char_set_p(T const& t) explicit SPROUT_CONSTEXPR char_set_p(T const& t)
: t_(t) : t_(t)
{} {}

View file

@ -62,7 +62,7 @@ namespace sprout {
; ;
} }
public: public:
as_array_p() = default; SPROUT_CONSTEXPR as_array_p() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR as_array_p( explicit SPROUT_CONSTEXPR as_array_p(
Parser const& p Parser const& p
) )

View file

@ -62,7 +62,7 @@ namespace sprout {
; ;
} }
public: public:
as_tuple_p() = default; SPROUT_CONSTEXPR as_tuple_p() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR as_tuple_p( explicit SPROUT_CONSTEXPR as_tuple_p(
Parser const& p Parser const& p
) )

View file

@ -56,7 +56,7 @@ namespace sprout {
; ;
} }
public: public:
omit_p() = default; SPROUT_CONSTEXPR omit_p() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR omit_p( explicit SPROUT_CONSTEXPR omit_p(
Parser const& p Parser const& p
) )

View file

@ -166,7 +166,7 @@ namespace sprout {
expr_type expr_; expr_type expr_;
std::size_t count_; std::size_t count_;
public: public:
repeat_p() = default; SPROUT_CONSTEXPR repeat_p() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR repeat_p(Parser const& p, std::size_t count = -1) explicit SPROUT_CONSTEXPR repeat_p(Parser const& p, std::size_t count = -1)
: expr_(sprout::weed::make_terminal_or_expr(p)) : expr_(sprout::weed::make_terminal_or_expr(p))
, count_(count) , count_(count)

View file

@ -57,7 +57,7 @@ namespace sprout {
; ;
} }
public: public:
replace_p() = default; SPROUT_CONSTEXPR replace_p() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
SPROUT_CONSTEXPR replace_p( SPROUT_CONSTEXPR replace_p(
Parser const& p, Parser const& p,
value_type const& value value_type const& value

View file

@ -47,7 +47,7 @@ namespace sprout {
expr_type expr_; expr_type expr_;
sprout::weed::limited::category limited_category_; sprout::weed::limited::category limited_category_;
public: public:
limit_p() = default; SPROUT_CONSTEXPR limit_p() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR limit_p( explicit SPROUT_CONSTEXPR limit_p(
Parser const& p, Parser const& p,
sprout::weed::limited::category limited_category = sprout::weed::limited::discard sprout::weed::limited::category limited_category = sprout::weed::limited::discard

View file

@ -46,7 +46,7 @@ namespace sprout {
private: private:
T t_; T t_;
public: public:
lit_str_p() = default; SPROUT_CONSTEXPR lit_str_p() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR lit_str_p(T const& t) explicit SPROUT_CONSTEXPR lit_str_p(T const& t)
: t_(t) : t_(t)
{} {}
@ -119,7 +119,7 @@ namespace sprout {
private: private:
T t_; T t_;
public: public:
str_p() = default; SPROUT_CONSTEXPR str_p() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
explicit SPROUT_CONSTEXPR str_p(T const& t) explicit SPROUT_CONSTEXPR str_p(T const& t)
: t_(t) : t_(t)
{} {}

View file

@ -22,7 +22,7 @@ namespace sprout {
Iterator current_; Iterator current_;
Attribute attr_; Attribute attr_;
public: public:
parser_result() = default; SPROUT_CONSTEXPR parser_result() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
SPROUT_CONSTEXPR parser_result( SPROUT_CONSTEXPR parser_result(
bool success, bool success,
Iterator current, Iterator current,

View file

@ -17,7 +17,7 @@ namespace sprout {
// //
struct unused { struct unused {
public: public:
unused() = default; SPROUT_CONSTEXPR unused() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
template<typename T> template<typename T>
SPROUT_CONSTEXPR unused(T) {} SPROUT_CONSTEXPR unused(T) {}
template<typename T> template<typename T>

View file

@ -40,7 +40,9 @@ namespace testspr {
protected: protected:
iterator_type current; iterator_type current;
public: public:
SPROUT_CONSTEXPR reduct_iterator() {}; SPROUT_CONSTEXPR reduct_iterator()
: current()
{}
SPROUT_CONSTEXPR reduct_iterator(reduct_iterator const& other) = default; SPROUT_CONSTEXPR reduct_iterator(reduct_iterator const& other) = default;
explicit SPROUT_CONSTEXPR reduct_iterator(iterator_type it) explicit SPROUT_CONSTEXPR reduct_iterator(iterator_type it)
: current(it) : current(it)

View file

@ -40,7 +40,7 @@ namespace testspr {
typedef typename base_type::range_type range_type; typedef typename base_type::range_type range_type;
typedef typename base_type::iterator iterator; typedef typename base_type::iterator iterator;
public: public:
reducted_range() = default; SPROUT_CONSTEXPR reducted_range() SPROUT_DEFAULTED_DEFAULT_CONSTRUCTOR_DECL
reducted_range(reducted_range const&) = default; reducted_range(reducted_range const&) = default;
explicit SPROUT_CONSTEXPR reducted_range(range_type& range) explicit SPROUT_CONSTEXPR reducted_range(range_type& range)
: base_type( : base_type(