package Ġru . art 2 0 0 0 . calculator . utils Ċ Ċ import Ġru . art 2 0 0 0 . calculator . model . calculator . numbers . Double Field Ċ import Ġru . art 2 0 0 0 . calculator . model . calculator . parts . Constant Ċ import Ġru . art 2 0 0 0 . calculator . model . calculator . parts . Expression Value Ċ import Ġru . art 2 0 0 0 . calculator . model . calculator . parts . Operation Ċ import Ġru . art 2 0 0 0 . calculator . view _ model . calculator . Calculator Formatter Ċ import Ġru . art 2 0 0 0 . calculator . view _ model . calculator . Double Calcul ations Ċ Ċ fun ĠNumber . expr (): ĠExpression Value < Double > Ġ= ĠExpression Value ( this . toDouble ()) Ċ Ċ inline Ġfun Ġ< re ified ĠO Ġ: ĠOperation < Double >> Ġfind Operation ( text Representation : ĠString ): ĠO Ġ{ ĊĠĠĠ Ġreturn ĠDouble Field . operations . first Ġ{ Ġit Ġis ĠO Ġ&& Ġit . text Represent ations . contains ( text Representation ) Ġ} Ġas ĠO Ċ } Ċ Ċ fun Ġfind Constant ( text Representation : ĠString ): ĠConstant < Double > Ġ{ ĊĠĠĠ Ġreturn ĠDouble Field . constants . first Ġ{ Ġit . symbols . contains ( text Representation ) Ġ} Ċ } Ċ Ċ val Ġcalculations Ġ= ĠDouble Calcul ations ( Calculator Formatter ) Ċ Ċ fun ĠDouble . to Display Format (): ĠString Ġ{ ĊĠĠĠ Ġreturn Ġcalculations . format ( this ) Ċ }