protected void computeLocalTypes( Map<JvmIdentifiableElement, ResolvedTypes> preparedResolvedTypes, ResolvedTypes resolvedTypes, IFeatureScopeSession featureScopeSession, JvmFeature feature) { for(JvmGenericType localClass: feature.getLocalClasses()) { computeTypes(preparedResolvedTypes, resolvedTypes, featureScopeSession, localClass); } }
protected void _recordExpressions(JvmFeature feature) { List<JvmGenericType> localClasses = feature.getLocalClasses(); for(int i = 0, size = localClasses.size(); i < size; i++) { recordExpressions(localClasses.get(i)); } recordAnnotationExpressions(feature); }
protected LightweightTypeReference convertLocalType(LightweightTypeReference reference) { if (member instanceof JvmFeature) { List<JvmGenericType> localClasses = ((JvmFeature) member).getLocalClasses(); if (localClasses.isEmpty()) { return reference; } LocalTypeSubstitutor substitutor = new LocalTypeSubstitutor(reference.getOwner(), member); LightweightTypeReference result = substitutor.withoutLocalTypes(reference); return result; } else { return reference; } }
for(JvmGenericType localType: ((JvmFeature) member).getLocalClasses()) { localType.setSimpleName(localType.getSimpleName() + '_' + (i++));
@Override protected XExpression getRootExpression() { XExpression result = ((LogicalContainerAwareReentrantTypeResolver) getResolver()).getLogicalContainerProvider().getAssociatedExpression(getMember()); if (result == null && member instanceof JvmFeature) { // make sure we process dangling local classes if the expression has been removed by an // active annotation // // To some extend this is a workaround for a bug with #setBody which should // take care of local classes, too List<JvmGenericType> localClasses = ((JvmFeature) member).getLocalClasses(); for(JvmGenericType localClass: localClasses) { LocalVariableCapturer.captureLocalVariables(localClass, this); } } return result; }
inferredType.setVisibility(JvmVisibility.DEFAULT); inferredType.getSuperTypes().add(jvmTypesBuilder.inferredType(anonymousClass)); container.getLocalClasses().add(inferredType); associator.associatePrimary(anonymousClass, inferredType); for (XtendMember member : anonymousClass.getMembers()) {
JvmFeature container, Map<JvmIdentifiableElement, ResolvedTypes> resolvedTypesByContext) { List<JvmGenericType> localClasses = container.getLocalClasses(); for(final JvmGenericType localClass: localClasses) { JvmTypeReference superType = localClass.getSuperTypes().get(0);
setVisibility(inferredJvmType, anonymousClass); inferredJvmType.getSuperTypes().add(this.typeBuilder.inferredType(anonymousClass)); container.getLocalClasses().add(inferredJvmType); this.associator.associatePrimary(anonymousClass, inferredJvmType);
appendable.newLine(); }; IterableExtensions.<JvmGenericType>filter(feature.getLocalClasses(), _function).forEach(_function_1);