- You can store a price in a floating point variable.
- All currencies are subdivided in 1/100th units (like US dollar/cents, euro/eurocents etc.).
- All currencies are subdivided in decimal units (like dinar/fils)
- All currencies currently in circulation are subdivided in decimal units. (to exclude shillings, pennies) (counter-example: MGA)
- All currencies are subdivided. (counter-examples: KRW, COP, JPY... Or subdivisions can be deprecated.)
- Prices can't have more precision than the smaller sub-unit of the currency. (e.g. gas prices)
- For any currency you can have a price of 1. (ZWL)
- Every country has its own currency. (EUR is the best example, but also Franc CFA, etc.)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// this is an old version available on npm and jsdelivr, but you can download | |
// newer version here: https://sourceforge.net/projects/jsclipper/files/ and keep it | |
// locally in your project | |
import ClipperLib from "https://cdn.jsdelivr.net/npm/js-clipper@1.0.1/+esm"; | |
const SUBJECT = ClipperLib.PolyType.ptSubject; // 0 | |
const CLIP = ClipperLib.PolyType.ptClip; // 1 | |
const FILL_NON_ZERO = ClipperLib.PolyFillType.pftNonZero; | |
const FILL_EVEN_ODD = ClipperLib.PolyFillType.pftEvenOdd; | |
const DIFFERENCE = ClipperLib.ClipType.ctDifference; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
require 'rubygems' | |
require 'capybara' | |
require 'capybara/dsl' | |
require 'capybara/poltergeist' | |
require 'awesome_print' | |
Capybara.run_server = false | |
Capybara.current_driver = :poltergeist | |
class Oyster |