1 // Copyright 2015-present 650 Industries. All rights reserved.
2 package host.exp.exponent
3 
4 object ABIVersion {
5   // Returns (5 * 100 * 100 + 6 * 100 + 7) for "5.6.7" or "5_6_7".
6   // Assumes all version numbers are < 100
toNumbernull7   @JvmStatic fun toNumber(abiVersion: String): Int {
8     if (abiVersion == RNObject.UNVERSIONED) {
9       return Int.MAX_VALUE
10     }
11     var delimiter = "."
12     if (abiVersion.contains("_")) {
13       delimiter = "_"
14     }
15     var value = 0
16     val base = 100
17     var currentBasePower = 1
18     val split = abiVersion.split(delimiter)
19     for (str in split.reversed()) {
20       value += str.toInt() * currentBasePower
21       currentBasePower *= base
22     }
23     return value
24   }
25 }
26