Method: BigDecimal.save_limit
- Defined in:
- bigdecimal.c
.save_limit { ... } ⇒ Object
Execute the provided block, but preserve the precision limit
BigDecimal.limit(100)
puts BigDecimal.limit
BigDecimal.save_limit do
BigDecimal.limit(200)
puts BigDecimal.limit
end
puts BigDecimal.limit
3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 |
# File 'bigdecimal.c', line 3895
static VALUE
BigDecimal_save_limit(VALUE self)
{
size_t const limit = VpGetPrecLimit();
int state;
VALUE ret = rb_protect(rb_yield, Qnil, &state);
VpSetPrecLimit(limit);
if (state) rb_jump_tag(state);
return ret;
}
|