protected void _generate(SarlCapacity capacity, IExtraLanguageGeneratorContext context) {
final JvmDeclaredType jvmType = getJvmModelAssociations().getInferredType(capacity);
final PyAppendable appendable = createAppendable(jvmType, context);
final List<? extends JvmTypeReference> superTypes;
if (!capacity.getExtends().isEmpty()) {
superTypes = capacity.getExtends();
} else {
superTypes = Collections.singletonList(getTypeReferences().getTypeForName(Capacity.class, capacity));
}
if (generateTypeDeclaration(
this.qualifiedNameProvider.getFullyQualifiedName(capacity).toString(),
capacity.getName(), true, superTypes,
getTypeBuilder().getDocumentation(capacity),
true,
capacity.getMembers(), appendable, context, null)) {
final QualifiedName name = getQualifiedNameProvider().getFullyQualifiedName(capacity);
writeFile(name, appendable, context);
}
}