/* Ċ Ġ* ĠCopyright Ġ 2 0 1 9 ĠD ones ky , ĠLLC Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġblock y . model . expression Ċ Ċ import Ġjava . math . BigDecimal Ċ Ċ interface ĠNumber Comparator Ġ{ ĊĊĠĠĠ Ġfun Ġcompare To ( number : ĠNumber , Ġother : ĠNumber ): ĠInt ĊĠĠĠ Ġfun Ġnot Equals ( number : ĠNumber , Ġother : ĠNumber ): ĠBoolean ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġvar Ġcomparator : ĠNumber Comparator Ġ= ĠBase Number Comparator () ĊĠĠĠ Ġ} Ċ } Ċ Ċ open Ġclass ĠBase Number Comparator Ġ: ĠNumber Comparator Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġcompare To ( number : ĠNumber , Ġother : ĠNumber ): ĠInt Ġ= Ġnumber . compareTo ( other ) ĊĠĠĠ Ġoverride Ġfun Ġnot Equals ( number : ĠNumber , Ġother : ĠNumber ) Ġ= Ġnumber Ġ!= Ġother Ċ } Ċ Ċ fun ĠNumber . compareTo ( other : ĠNumber ): ĠInt Ġ= Ġwhen Ġ( this ) Ġ{ ĊĠĠĠ Ġis ĠInt Ġ-> Ġcompare To ( other . toInt ()) ĊĠĠĠ Ġis ĠFloat Ġ-> Ġcompare To ( other . toFloat ()) ĊĠĠĠ Ġis ĠLong Ġ-> Ġcompare To ( other . to Long ()) ĊĠĠĠ Ġis ĠDouble Ġ-> Ġcompare To ( other . toDouble ()) ĊĠĠĠ Ġis ĠShort Ġ-> Ġcompare To ( other . to Short ()) ĊĠĠĠ Ġis ĠByte Ġ-> Ġcompare To ( other . to Byte ()) ĊĠĠĠ Ġis ĠBigDecimal Ġ-> Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( other Ġis ĠBigDecimal ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcompare To ( other ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTODO (" Unsupported Ġ$ this Ġcompare To Ġ$ other ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġelse Ġ-> ĠTODO (" Unsupported Ġ$ this Ġcompare To Ġ$ other ") Ċ } Ċ