code: protected void appendCloneFunctionIfCloneable(GenerationContext context, XtendTypeDeclaration source, JvmGenericType target) {
  		if (!target.isInterface() && this.inheritanceHelper.isSubTypeOf(target, Cloneable.class, null)) {
  			appendCloneFunction(context, source, target);
  		}
  	}
docs: Append the clone function only if the type is a subtype of {@link Cloneable}.
  
  <p>The clone function replies a value of the current type, not {@code Object}.
  
  @param context the current generation context.
  @param source the source object.
  @param target the inferred JVM object.
  @since 0.6
  @see #appendCloneFunction(GenerationContext, XtendTypeDeclaration, JvmGenericType)