Module: Oddx
- Defined in:
- lib/oddx.rb,
lib/oddx/odds.rb,
lib/oddx/version.rb,
lib/oddx/oddx_error.rb,
lib/oddx/decimal_odds.rb,
lib/oddx/moneyline_odds.rb,
lib/oddx/fractional_odds.rb,
lib/oddx/probability_odds.rb
Overview
The main Oddx driver
Defined Under Namespace
Classes: DecimalOdds, FractionalOdds, MoneylineOdds, Odds, OddxError, ProbabilityOdds
Constant Summary collapse
- ODDS_FORMATS =
Convert sporting odds to any format
Example:
>> odds = Oddx.parse "3/1" >> odds.moneyline => "+300" >> odds.decimal => "4" >> odds.probability => "25%" >> odds.fractional => "3/1"Supported formats:
1. moneyline (e.g. +300, -300) 2. fractional (e.g. 3/1, 1/5) 3. decimal (e.g. 1.2, 4) 4. probability (e.g. 95%, 30%) [ FractionalOdds, MoneylineOdds, DecimalOdds, ProbabilityOdds ]
- VERSION =
"0.1.5"
Class Method Summary collapse
Class Method Details
.parse(odds) ⇒ Object
39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/oddx.rb', line 39 def self.parse(odds) begin ODDS_FORMATS.each do |format| if odds.match format::REGEX return format.new(odds) end end rescue NoMethodError raise OddxError.new(msg: "Error parsing odds, provide as String to avoid ambiguity. e.g: '+4000'", odds: odds) end raise OddxError.new(odds: odds) end |