Code Explainers

Code explainers tagged #rounding

php
<?php
 
namespace App\Services;
 

Calculating a cart total with a Money type

value-objects money-arithmetic domain-logic
Intermediate 7 steps
php
final class InvoiceCalculator
{
    private const SCALE = 4;
 

Precise money math with PHP's BCMath

bcmath arbitrary precision money
Intermediate 8 steps
java
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.module.SimpleModule;

Serializing Money to JSON in Spring

serialization jackson money
Intermediate 8 steps
java
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Currency;
 

A safe Money value type in Java

immutability bigdecimal value-object
Intermediate 10 steps
python
from decimal import Decimal, ROUND_HALF_UP
 
from babel.numbers import format_currency
from flask import Flask

Building a currency Jinja filter in Flask

template filters decimal precision internationalization
Intermediate 6 steps
ruby
require "bigdecimal"
 
module Money
  CENTS = BigDecimal("0.01")

Handling money safely with BigDecimal in Ruby

bigdecimal rounding currency
Intermediate 7 steps
java
package com.example.billing;
 
import java.math.BigDecimal;
import java.math.RoundingMode;

Locale-aware currency formatting in Java

internationalization rounding immutability
Intermediate 6 steps