safe_math_legacy

Crates.iosafe_math_legacy
lib.rssafe_math_legacy
version1.1.3
created_at2025-06-19 17:51:25.048404+00
updated_at2025-06-19 18:02:54.961806+00
descriptionDeprecated! Math without overflow, creates an enum and a macro to help mitigate any overflow while multiplying and adding
homepage
repositoryhttps://github.com/XDDudeGuy/safe_math
max_upload_size
id1718644
size1,279,655
(XDDudeGuy)

documentation

README

DEPRECATED! NEW VERSION HERE

Safe Math

Math without overflow!

Adds a macro and an enum safe_math!() and Operation

src/safe_math.rs

Operation:

pub enum Operation {
  ...
}

Has two variants Add and Multiply with no fields, used in the safe_math!() macro to determine whether you are adding or multiplying the inputted numbers

safe_math!():

#[macro_export]
macro_rules! safe_math {
  ($in_x:expr, $in_y:expr, $operation:expr)
}

This takes three expression arguments, the first two being the numbers you wish to use and the third being the operation you wish to apply to the numbers whether that be addition or multiplication. The first two expressions should be below the unsigned 64 bit integer limit and the third should be a variant of the Operation enum. Most errors will just return the larger of the two number input variables in the Err() variant of the Result enum

Commit count: 50

cargo fmt