[READ-ONLY] Mirror of https://github.com/probablykasper/cpc. Text calculator with support for units and conversion cpc.kasper.space
calculator cli conversion converter library math package units units-converter wasm website
0

Configure Feed

Select the types of activity you want to include in your feed.

Remove unnecessary inverted weights

No longer necessary because we use .reduce() to display numbers

Kasper (May 30, 2025, 1:47 AM +0200) 3bbc5c53 31acf609

+6 -29
+6 -29
src/units.rs
··· 239 239 ZebibytesPerSecond: (DataTransferRate, d128!(9444732965739290427392), "zebibyte per second", "zebibytes per second"), 240 240 YobibytesPerSecond: (DataTransferRate, d128!(9671406556917033397649408), "yobibyte per second", "yobibytes per second"), 241 241 242 - // ! If updating Millijoule, also update get_inverted_millijoule_weight() 243 242 Millijoule: (Energy, d128!(0.001), "millijoule", "millijoules"), 244 243 Joule: (Energy, d128!(1), "joule", "joules"), 245 244 NewtonMeter: (Energy, d128!(1), "newton meter", "newton meters"), ··· 257 256 TerawattHour: (Energy, d128!(3600000000000000), "terawatt-hour", "terawatt-hours"), 258 257 PetawattHour: (Energy, d128!(3600000000000000000), "petawatt-hour", "petawatt-hours"), 259 258 260 - // ! If updating Milliwatt, also update get_inverted_milliwatt_weight() 261 259 Milliwatt: (Power, d128!(0.001), "milliwatt", "milliwatts"), 262 260 Watt: (Power, d128!(1), "watt", "watts"), 263 261 Kilowatt: (Power, d128!(1000), "kilowatt", "kilowatts"), ··· 273 271 Horsepower: (Power, d128!(745.69987158227022), "horsepower", "horsepower"), 274 272 MetricHorsepower: (Power, d128!(735.49875), "metric horsepower", "metric horsepower"), 275 273 276 - // ! If updating Milliampere, also update get_inverted_milliampere_weight() 277 274 Milliampere: (ElectricCurrent, d128!(0.001), "milliampere", "milliamperes"), 278 275 Ampere: (ElectricCurrent, d128!(1), "ampere", "amperes"), 279 276 Kiloampere: (ElectricCurrent, d128!(1000), "kiloampere", "kiloamperes"), 280 277 Abampere: (ElectricCurrent, d128!(10), "abampere", "abamperes"), 281 278 282 - // ! If updating Milliohm, also update get_inverted_milliohm_weight() 283 279 Milliohm: (Resistance, d128!(0.001), "milliohm", "milliohms"), 284 280 Ohm: (Resistance, d128!(1), "ohm", "ohms"), 285 281 Kiloohm: (Resistance, d128!(1000), "kiloohm", "kiloohms"), 286 282 287 - // ! If updating Millivolt, also update get_inverted_millivolt_weight() 288 283 Millivolt: (Voltage, d128!(0.001), "millivolt", "millivolts"), 289 284 Volt: (Voltage, d128!(1), "volt", "volts"), 290 285 Kilovolt: (Voltage, d128!(1000), "kilovolt", "kilovolts"), ··· 318 313 Fahrenheit: (Temperature, d128!(0), "fahrenheit", "fahrenheit"), 319 314 ); 320 315 321 - // These functions are here to avoid dividing by small numbers like 0.01, 322 - // because d128 gives numbers in E notation in that case. 323 - fn get_inverted_millijoule_weight() -> d128 { 324 - d128!(1000) 325 - } 326 - fn get_inverted_milliwatt_weight() -> d128 { 327 - d128!(1000) 328 - } 329 - fn get_inverted_milliohm_weight() -> d128 { 330 - d128!(1000) 331 - } 332 - fn get_inverted_milliampere_weight() -> d128 { 333 - d128!(1000) 334 - } 335 - fn get_inverted_millivolt_weight() -> d128 { 336 - d128!(1000) 337 - } 338 - 339 316 /// Returns the conversion factor between two units. 340 317 /// 341 318 /// The conversion factor is what you need to multiply `unit` with to get ··· 492 469 } else if value >= d128!(1) { // 1 joule 493 470 return Number::new(value, Joule) 494 471 } else { 495 - return Number::new(value * get_inverted_millijoule_weight(), Millijoule) 472 + return Number::new(value/Millijoule.weight(), Millijoule) 496 473 } 497 474 } else if number.unit.category() == Power { 498 475 if value >= d128!(1000000000000000) { // 1 petawatt ··· 508 485 } else if value >= d128!(1) { // 1 watt 509 486 return Number::new(value, Watt) 510 487 } else { 511 - return Number::new(value * get_inverted_milliwatt_weight(), Milliwatt) 488 + return Number::new(value/Milliwatt.weight(), Milliwatt) 512 489 } 513 490 } else if number.unit.category() == ElectricCurrent { 514 491 if value >= d128!(1000) { // 1 kiloampere ··· 516 493 } else if value >= d128!(1) { // 1 ampere 517 494 return Number::new(value, Ampere) 518 495 } else { 519 - return Number::new(value * get_inverted_milliampere_weight(), Milliampere) 496 + return Number::new(value/Milliampere.weight(), Milliampere) 520 497 } 521 498 } else if number.unit.category() == Resistance { 522 499 if value >= d128!(1000) { // 1 kiloohm ··· 524 501 } else if value >= d128!(1) { // 1 ohm 525 502 return Number::new(value, Ohm) 526 503 } else { 527 - return Number::new(value * get_inverted_milliohm_weight(), Milliohm) 504 + return Number::new(value/Milliohm.weight(), Milliohm) 528 505 } 529 506 } else if number.unit.category() == Voltage { 530 507 if value >= d128!(1000) { // 1 kilovolt ··· 532 509 } else if value >= d128!(1) { // 1 volt 533 510 return Number::new(value, Volt) 534 511 } else { 535 - return Number::new(value * get_inverted_millivolt_weight(), Millivolt) 512 + return Number::new(value/Millivolt.weight(), Millivolt) 536 513 } 537 514 } 538 515 number ··· 553 530 } else if value >= d128!(1) { // 1 joule 554 531 return Number::new(value/Joule.weight(), Joule) 555 532 } else { 556 - return Number::new(value * get_inverted_millijoule_weight(), Millijoule) 533 + return Number::new(value/Millijoule.weight(), Millijoule) 557 534 } 558 535 } 559 536 number