The manual says that they aren't vectors. If I do a for-loop over
[1:10000000], does it generate each index as needed or does it generate the
whole thing?
On 10/10/2021 7:13 PM, Father Horton wrote:
The manual says that they aren't vectors. If I do a for-loop over
[1:10000000], does it generate each index as needed or does it
generate the whole thing?
From a black-box perspective, it's clear that they are not immediately
converted into vectors:
echo([1:10]);
yields
ECHO: [1 : 1 : 10]
Looking at the gut agrees: sure looks like an iterator.
RangeType::iterator& RangeType::iterator::operator++()
{
val = range.begin_val + range.step_val * ++i_step;
update_type();
return *this;
}
Thanks!
On Mon, Oct 11, 2021 at 10:00 AM Jordan Brown openscad@jordan.maileater.net
wrote:
On 10/10/2021 7:13 PM, Father Horton wrote:
The manual says that they aren't vectors. If I do a for-loop over
[1:10000000], does it generate each index as needed or does it generate the
whole thing?
From a black-box perspective, it's clear that they are not immediately
converted into vectors:
echo([1:10]);
yields
ECHO: [1 : 1 : 10]
Looking at the gut agrees: sure looks like an iterator.
RangeType::iterator& RangeType::iterator::operator++()
{
val = range.begin_val + range.step_val * ++i_step;
update_type();
return *this;
}