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