about summary refs log tree commit diff
path: root/src/libstd/num
AgeCommit message (Collapse)AuthorLines
2013-04-29libstd: remove implicit copying of BigInt/BigUintgifnksm-20/+37
2013-04-28auto merge of #6092 : gifnksm/rust/impl-integer-bigint, r=graydonbors-144/+383
This is a follow-up commit for #6041 (and depending on #6048). Also adding `#[inline(always)]` for almost every methods in `std::bigint`.
2013-04-28libstd: inlining almost every methods in bigint module.gifnksm-1/+86
2013-04-28libstd: impl Integer for BigUint/BigInt.gifnksm-143/+297
Also remove abs() method from the non-trait impl for BigInt/BigUint. That method is provided in the Signed trait.
2013-04-27only use #[no_core] in libcoreDaniel Micay-6/+0
2013-04-26Add is_zero method to ZeroBrendan Zabarauskas-19/+27
2013-04-25Update impl of Round for RatioBrendan Zabarauskas-20/+22
2013-04-24Implement Signed and Unsigned traits and remove related predicate functionsBrendan Zabarauskas-8/+25
2013-04-22auto merge of #6013 : gifnksm/rust/bigint-quot-rem, r=graydonbors-56/+57
BigInt had been supported quot/rem and div/mod correctly, but after merging #5990 they have been broken. This commit fixes it.
2013-04-22auto merge of #5966 : alexcrichton/rust/issue-3083, r=graydonbors-2/+2
Closes #3083. This takes a similar approach to #5797 where a set is present on the `tcx` of used mutable definitions. Everything is by default warned about, and analyses must explicitly add mutable definitions to this set so they're not warned about. Most of this was pretty straightforward, although there was one caveat that I ran into when implementing it. Apparently when the old modes are used (or maybe `legacy_modes`, I'm not sure) some different code paths are taken to cause spurious warnings to be issued which shouldn't be issued. I'm not really sure how modes even worked, so I was having a lot of trouble tracking this down. I figured that because they're a legacy thing that I'd just de-mode the compiler so that the warnings wouldn't be a problem anymore (or at least for the compiler). Other than that, the entire compiler compiles without warnings of unused mutable variables. To prevent bad warnings, #5965 should be landed (which in turn is waiting on #5963) before landing this. I figured I'd stick it out for review anyway though.
2013-04-23libstd: correct bigint's quot/rem, div/modulogifnksm-56/+57
2013-04-22libstd: denominator isn't quotientHuon Wilson-1/+1
2013-04-22Rename Div operator trait to Quot and Modulo operator trait to RemBrendan Zabarauskas-74/+63
2013-04-20std: remove unused 'mut' variablesAlex Crichton-2/+2
2013-04-08Removing no longer needed unsafe blocksAlex Crichton-1/+1
2013-04-08Removing some mutable fields in libstdAlex Crichton-1/+0
2013-04-07Impl cmp/num traits for BigUint, BigIntgifnksm-145/+187
TotalEq, TotalOrd, FromStrRadix, ToStrRadix.
2013-04-05libstd: make complex.rs XXX's into issues and FIXME'sHuon Wilson-4/+3
2013-04-05libstd: add basic complex numbersHuon Wilson-0/+316
2013-04-05libstd: add basic rational numbersHuon Wilson-0/+511
2013-04-05libstd: move bigint to dedicated num directoryHuon Wilson-0/+1647