FullPackageName.ceylon
import ceylon.ast.core {
FullPackageName,
PackageName
}
import ceylon.ast.redhat {
RedHatTransformer,
fullPackageNameToCeylon,
compileFullPackageName
}
import com.redhat.ceylon.compiler.typechecker.tree {
Tree {
JImportPath=ImportPath
}
}
shared object fullPackageName satisfies ConcreteTest<FullPackageName,JImportPath> {
String->FullPackageName construct(<String->PackageName>+ components)
=> ".".join(components*.key)->FullPackageName(components*.item);
shared String->FullPackageName ceylonAstCorePackageName = construct(identifier.ceylonLIdentifier, identifier.astLIdentifier, identifier.coreLIdentifier);
// not tested directly, but used by other tests
shared String->FullPackageName javaLangPackageName = construct(identifier.javaLIdentifier, identifier.langLIdentifier);
shared String->FullPackageName ceylonCollectionPackageName = construct(identifier.ceylonLIdentifier, identifier.collectionLIdentifier);
compile = compileFullPackageName;
fromCeylon = RedHatTransformer.transformFullPackageName;
toCeylon = fullPackageNameToCeylon;
codes = [ceylonAstCorePackageName];
}