ExponentiationOperation.ceylon
import ceylon.ast.core {
ExponentiationOperation,
PrePostfixingExpression,
ExponentiatingExpression
}
import ceylon.ast.redhat {
RedHatTransformer,
exponentiationOperationToCeylon,
compileExponentiationOperation
}
import com.redhat.ceylon.compiler.typechecker.tree {
Tree {
JPowerOp=PowerOp
}
}
shared object exponentiationOperation satisfies ConcreteTest<ExponentiationOperation,JPowerOp> {
String->ExponentiationOperation construct(String->PrePostfixingExpression left, String->ExponentiatingExpression right)
=> "``left.key``^``right.key``"->ExponentiationOperation(left.item, right.item);
shared String->ExponentiationOperation _1138Pow1Operation = construct(integerLiteral._1138IntegerLiteral, integerLiteral.oneIntegerLiteral);
// not tested directly, but used in other tests
shared String->ExponentiationOperation xSquaredOperation = construct(baseExpression.xExpression, integerLiteral._2IntegerLiteral);
shared String->ExponentiationOperation ySquaredOperation = construct(baseExpression.yExpression, integerLiteral._2IntegerLiteral);
compile = compileExponentiationOperation;
fromCeylon = RedHatTransformer.transformExponentiationOperation;
toCeylon = exponentiationOperationToCeylon;
codes = [_1138Pow1Operation];
}