BaseMeta.ceylon
import ceylon.ast.core {
BaseMeta,
BaseType,
LIdentifier,
MemberNameWithTypeArguments,
PackageQualifier,
TypeArgument,
TypeArguments,
TypeNameWithTypeArguments,
UIdentifier
}
import ceylon.ast.redhat {
RedHatTransformer,
baseMetaToCeylon,
compileBaseMeta
}
import com.redhat.ceylon.compiler.typechecker.tree {
Tree {
JMemberLiteral=MemberLiteral
}
}
shared object baseMeta satisfies ConcreteTest<BaseMeta,JMemberLiteral> {
shared String->BaseMeta sumOfFloatBaseMeta = "`sum<Float>`"->BaseMeta(MemberNameWithTypeArguments(LIdentifier("sum"), TypeArguments([TypeArgument(BaseType(TypeNameWithTypeArguments(UIdentifier("Float"))))])));
shared String->BaseMeta systemBaseMeta = "`system`"->BaseMeta(MemberNameWithTypeArguments(LIdentifier("system"), null));
shared String->BaseMeta packageVersionMeta = "`package.version`"->BaseMeta(MemberNameWithTypeArguments(LIdentifier("version"), null), PackageQualifier());
compile = compileBaseMeta;
fromCeylon = RedHatTransformer.transformBaseMeta;
toCeylon = baseMetaToCeylon;
codes = [sumOfFloatBaseMeta, systemBaseMeta, packageVersionMeta];
}