Skip to content

Commit

Permalink
metamodel #226: renamed ParameterisedType->OpenParameterisedType
Browse files Browse the repository at this point in the history
  • Loading branch information
FroMage committed May 30, 2013
1 parent 2dee3b3 commit 415544a
Show file tree
Hide file tree
Showing 6 changed files with 30 additions and 30 deletions.
2 changes: 1 addition & 1 deletion runtime-js/language-module.txt
Expand Up @@ -41,5 +41,5 @@ identical,compose,shuffle,plus,times,combine,sort

#metamodel
metamodel/Annotated,metamodel/Annotation,metamodel/AppliedType,metamodel/Class,metamodel/ClassOrInterface,metamodel/ConstrainedAnnotation,metamodel/Declaration,metamodel/Function,metamodel/Interface,metamodel/IntersectionType,metamodel/Member,metamodel/SequencedAnnotation,metamodel/Type,metamodel/UnionType,metamodel/Value,metamodel/Variable,metamodel/annotations,metamodel/nothingType,metamodel/OptionalAnnotation,metamodel/SequencedAnnotation
metamodel/declaration/ClassDeclaration,metamodel/declaration/ClassOrInterfaceDeclaration,metamodel/declaration/Declaration,metamodel/declaration/FunctionDeclaration,metamodel/declaration/InterfaceDeclaration,metamodel/declaration/OpenIntersection,metamodel/declaration/ModuleAndPackage,metamodel/declaration/Parameter,metamodel/declaration/Parameterised,metamodel/declaration/ParameterisedType,metamodel/declaration/OpenType,metamodel/declaration/TypeParameter,metamodel/declaration/TypeParameterType,metamodel/declaration/OpenUnion,metamodel/declaration/AttributeDeclaration,metamodel/declaration/VariableDeclaration,metamodel/declaration/nothingType
metamodel/declaration/ClassDeclaration,metamodel/declaration/ClassOrInterfaceDeclaration,metamodel/declaration/Declaration,metamodel/declaration/FunctionDeclaration,metamodel/declaration/InterfaceDeclaration,metamodel/declaration/OpenIntersection,metamodel/declaration/ModuleAndPackage,metamodel/declaration/Parameter,metamodel/declaration/Parameterised,metamodel/declaration/OpenParameterisedType,metamodel/declaration/OpenType,metamodel/declaration/TypeParameter,metamodel/declaration/TypeParameterType,metamodel/declaration/OpenUnion,metamodel/declaration/AttributeDeclaration,metamodel/declaration/VariableDeclaration,metamodel/declaration/nothingType
annotations
Expand Up @@ -35,7 +35,7 @@ public abstract class FreeClassOrInterface
public static final TypeDescriptor $TypeDescriptor = TypeDescriptor.klass(FreeClassOrInterface.class);

@Ignore
static final TypeDescriptor $InterfacesTypeDescriptor = TypeDescriptor.klass(ceylon.language.metamodel.declaration.ParameterisedType.class, ceylon.language.metamodel.declaration.InterfaceDeclaration.$TypeDescriptor);
static final TypeDescriptor $InterfacesTypeDescriptor = TypeDescriptor.klass(ceylon.language.metamodel.declaration.OpenParameterisedType.class, ceylon.language.metamodel.declaration.InterfaceDeclaration.$TypeDescriptor);

@Ignore
private static final TypeDescriptor $FunctionTypeDescriptor = TypeDescriptor.klass(ceylon.language.metamodel.declaration.FunctionDeclaration.class, Anything.$TypeDescriptor, Empty.$TypeDescriptor);
Expand All @@ -45,8 +45,8 @@ public abstract class FreeClassOrInterface
private static final TypeDescriptor $ClassOrInterfaceTypeDescriptor = TypeDescriptor.klass(ceylon.language.metamodel.declaration.ClassOrInterfaceDeclaration.class, Anything.$TypeDescriptor);

private volatile boolean initialised = false;
private ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.ClassDeclaration> superclass;
private Sequential<ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>> interfaces;
private ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.ClassDeclaration> superclass;
private Sequential<ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>> interfaces;
private Sequential<ceylon.language.metamodel.declaration.TypeParameter> typeParameters;

private List<ceylon.language.metamodel.declaration.Declaration> declarations;
Expand Down Expand Up @@ -74,13 +74,13 @@ protected void init(){

ProducedType superType = declaration.getExtendedType();
if(superType != null)
this.superclass = (ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.ClassDeclaration>) Metamodel.getMetamodel(superType);
this.superclass = (ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.ClassDeclaration>) Metamodel.getMetamodel(superType);

List<ProducedType> satisfiedTypes = declaration.getSatisfiedTypes();
ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>[] interfaces = new ceylon.language.metamodel.declaration.ParameterisedType[satisfiedTypes.size()];
ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>[] interfaces = new ceylon.language.metamodel.declaration.OpenParameterisedType[satisfiedTypes.size()];
int i=0;
for(ProducedType pt : satisfiedTypes){
interfaces[i++] = (ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>) Metamodel.getMetamodel(pt);
interfaces[i++] = (ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>) Metamodel.getMetamodel(pt);
}
this.interfaces = (Sequential)Util.sequentialInstance($InterfacesTypeDescriptor, interfaces);

Expand Down Expand Up @@ -162,15 +162,15 @@ private <Kind> Sequential<? extends Kind> filteredMembers(
}

@Override
@TypeInfo("ceylon.language::Sequential<ceylon.language.metamodel.declaration::ParameterisedType<ceylon.language.metamodel.declaration::InterfaceDeclaration>>")
public Sequential<? extends ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>> getInterfaces() {
@TypeInfo("ceylon.language::Sequential<ceylon.language.metamodel.declaration::OpenParameterisedType<ceylon.language.metamodel.declaration::InterfaceDeclaration>>")
public Sequential<? extends ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>> getInterfaces() {
checkInit();
return interfaces;
}

@Override
@TypeInfo("ceylon.language.metamodel.declaration::ParameterisedType<ceylon.language.metamodel.declaration::ClassDeclaration>|ceylon.language::Null")
public ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.ClassDeclaration> getSuperclass() {
@TypeInfo("ceylon.language.metamodel.declaration::OpenParameterisedType<ceylon.language.metamodel.declaration::ClassDeclaration>|ceylon.language::Null")
public ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.ClassDeclaration> getSuperclass() {
checkInit();
return superclass;
}
Expand Down
Expand Up @@ -7,7 +7,7 @@
import ceylon.language.Map;
import ceylon.language.Sequential;
import ceylon.language.finished_;
import ceylon.language.metamodel.declaration.ParameterisedType$impl;
import ceylon.language.metamodel.declaration.OpenParameterisedType$impl;
import ceylon.language.metamodel.declaration.OpenType;
import ceylon.language.metamodel.declaration.OpenType$impl;

Expand All @@ -28,14 +28,14 @@
@TypeParameter(value = "DeclarationType", variance = Variance.OUT, satisfies = "ceylon.language.metamodel.declaration::ClassOrInterfaceDeclaration"),
})
public class FreeParameterisedType<DeclarationType extends ceylon.language.metamodel.declaration.ClassOrInterfaceDeclaration>
implements ceylon.language.metamodel.declaration.ParameterisedType<DeclarationType>, ReifiedType {
implements ceylon.language.metamodel.declaration.OpenParameterisedType<DeclarationType>, ReifiedType {

private volatile boolean initialised;
final com.redhat.ceylon.compiler.typechecker.model.ProducedType producedType;
protected com.redhat.ceylon.compiler.java.runtime.metamodel.FreeClassOrInterface declaration;
protected ceylon.language.Map<? extends ceylon.language.metamodel.declaration.TypeParameter, ? extends ceylon.language.metamodel.declaration.OpenType> typeArguments;
protected ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.ClassDeclaration> superclass;
protected Sequential<ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>> interfaces;
protected ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.ClassDeclaration> superclass;
protected Sequential<ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>> interfaces;

FreeParameterisedType(com.redhat.ceylon.compiler.typechecker.model.ProducedType producedType){
this.producedType = producedType;
Expand All @@ -50,7 +50,7 @@ public class FreeParameterisedType<DeclarationType extends ceylon.language.metam

@Override
@Ignore
public ParameterisedType$impl $ceylon$language$metamodel$declaration$ParameterisedType$impl() {
public OpenParameterisedType$impl $ceylon$language$metamodel$declaration$OpenParameterisedType$impl() {
// TODO Auto-generated method stub
return null;
}
Expand Down Expand Up @@ -91,16 +91,16 @@ protected void init() {
com.redhat.ceylon.compiler.typechecker.model.ProducedType superType = decl.getExtendedType();
if(superType != null){
com.redhat.ceylon.compiler.typechecker.model.ProducedType superTypeResolved = superType.substitute(producedType.getTypeArguments());
this.superclass = (ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.ClassDeclaration>) Metamodel.getMetamodel(superTypeResolved);
this.superclass = (ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.ClassDeclaration>) Metamodel.getMetamodel(superTypeResolved);
}

List<com.redhat.ceylon.compiler.typechecker.model.ProducedType> satisfiedTypes = decl.getSatisfiedTypes();
ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>[] interfaces
= new ceylon.language.metamodel.declaration.ParameterisedType[satisfiedTypes.size()];
ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>[] interfaces
= new ceylon.language.metamodel.declaration.OpenParameterisedType[satisfiedTypes.size()];
int i=0;
for(com.redhat.ceylon.compiler.typechecker.model.ProducedType pt : satisfiedTypes){
com.redhat.ceylon.compiler.typechecker.model.ProducedType resolvedPt = pt.substitute(producedType.getTypeArguments());
interfaces[i++] = (ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>)
interfaces[i++] = (ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>)
Metamodel.getMetamodel(resolvedPt);
}
this.interfaces = (Sequential)Util.sequentialInstance(FreeClassOrInterface.$InterfacesTypeDescriptor, interfaces);
Expand All @@ -120,15 +120,15 @@ public DeclarationType getDeclaration() {
}

@Override
@TypeInfo("ceylon.language::Sequential<ceylon.language.metamodel.declaration::ParameterisedType<ceylon.language.metamodel.declaration::InterfaceDeclaration>>")
public Sequential<? extends ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>> getInterfaces() {
@TypeInfo("ceylon.language::Sequential<ceylon.language.metamodel.declaration::OpenParameterisedType<ceylon.language.metamodel.declaration::InterfaceDeclaration>>")
public Sequential<? extends ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.InterfaceDeclaration>> getInterfaces() {
checkInit();
return interfaces;
}

@Override
@TypeInfo("ceylon.language.metamodel.declaration::ParameterisedType<ceylon.language.metamodel.declaration::ClassDeclaration>|ceylon.language::Null")
public ceylon.language.metamodel.declaration.ParameterisedType<ceylon.language.metamodel.declaration.ClassDeclaration> getSuperclass() {
@TypeInfo("ceylon.language.metamodel.declaration::OpenParameterisedType<ceylon.language.metamodel.declaration::ClassDeclaration>|ceylon.language::Null")
public ceylon.language.metamodel.declaration.OpenParameterisedType<ceylon.language.metamodel.declaration.ClassDeclaration> getSuperclass() {
checkInit();
return superclass;
}
Expand Down
Expand Up @@ -8,9 +8,9 @@ shared interface ClassOrInterfaceDeclaration
of ClassDeclaration | InterfaceDeclaration
satisfies Declaration & Parameterised {

shared formal ParameterisedType<ClassDeclaration>? superclass;
shared formal OpenParameterisedType<ClassDeclaration>? superclass;

shared formal ParameterisedType<InterfaceDeclaration>[] interfaces;
shared formal OpenParameterisedType<InterfaceDeclaration>[] interfaces;

shared formal Kind[] members<Kind>()
given Kind satisfies Declaration;
Expand Down
@@ -1,12 +1,12 @@
shared interface ParameterisedType<out DeclarationType>
shared interface OpenParameterisedType<out DeclarationType>
satisfies OpenType
given DeclarationType satisfies ClassOrInterfaceDeclaration {

shared formal DeclarationType declaration;

shared formal ParameterisedType<ClassDeclaration>? superclass;
shared formal OpenParameterisedType<ClassDeclaration>? superclass;

shared formal ParameterisedType<InterfaceDeclaration>[] interfaces;
shared formal OpenParameterisedType<InterfaceDeclaration>[] interfaces;

shared formal Map<TypeParameter, OpenType> typeArguments;
}
2 changes: 1 addition & 1 deletion src/ceylon/language/metamodel/declaration/OpenType.ceylon
@@ -1,4 +1,4 @@
shared interface OpenType of ParameterisedType<ClassOrInterfaceDeclaration>
shared interface OpenType of OpenParameterisedType<ClassOrInterfaceDeclaration>
| TypeParameterType
| OpenUnion
| OpenIntersection
Expand Down

0 comments on commit 415544a

Please sign in to comment.