Improved trigonometry operations #99

Closed
CommanderTvis wants to merge 22 commits from adv-expr-improved-trigonometry into adv-expr
Showing only changes of commit 48b688b6b1 - Show all commits

View File

@ -20,20 +20,18 @@ interface ExtendedFieldOperations<T> :
PowerOperations.SQRT_OPERATION -> sqrt(arg) PowerOperations.SQRT_OPERATION -> sqrt(arg)
ExponentialOperations.EXP_OPERATION -> exp(arg) ExponentialOperations.EXP_OPERATION -> exp(arg)
ExponentialOperations.LN_OPERATION -> ln(arg) ExponentialOperations.LN_OPERATION -> ln(arg)
else -> super.unaryOperation(operation, arg) else -> super<InverseTrigonometricOperations>.unaryOperation(operation, arg)
} }
} }
interface ExtendedField<T> : ExtendedFieldOperations<T>, Field<T> { interface ExtendedField<T> : ExtendedFieldOperations<T>, Field<T> {
override fun rightSideNumberOperation(operation: String, left: T, right: Number): T { override fun rightSideNumberOperation(operation: String, left: T, right: Number): T = when (operation) {
return when (operation) { PowerOperations.POW_OPERATION -> power(left, right)
PowerOperations.POW_OPERATION -> power(left, right) else -> super.rightSideNumberOperation(operation, left, right)
else -> super.rightSideNumberOperation(operation, left, right)
}
} }
} }
/** /**
* Real field element wrapping double. * Real field element wrapping double.
* *