In loadDeclarations(), refineMembers() is called for each declaration in order to set Declaration.refinedDeclaration on all members, but this is not happening for top-level values like true.
I don't know how correct this is, but adding the following seems to work:
} else if (m.get(MetamodelGenerator.KEY_METATYPE) instanceof Value) {
TypeDeclaration td = ((Value)m.get(MetamodelGenerator.KEY_METATYPE)).getTypeDeclaration();
if (td != null) {
refineMembers((ClassOrInterface)td);
}
}
In
loadDeclarations()
,refineMembers()
is called for each declaration in order to setDeclaration.refinedDeclaration
on all members, but this is not happening for top-level values liketrue
.I don't know how correct this is, but adding the following seems to work:
as the last
else if
at https://github.com/ceylon/ceylon-js/blob/master/src/main/java/com/redhat/ceylon/compiler/js/loader/JsonPackage.java#L146