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