import org.opendaylight.mdsal.binding.model.util.Types;
import org.opendaylight.mdsal.binding.spec.naming.BindingMapping;
import org.opendaylight.yangtools.yang.binding.Augmentable;
-import org.opendaylight.yangtools.yang.binding.AugmentationHolder;
import org.opendaylight.yangtools.yang.binding.CodeHelpers;
*/
static final @NonNull JavaTypeName OVERRIDE = JavaTypeName.create(Override.class);
/**
- * {@code java.lang.SuppressWarnings} as a JavaTypeName.
+ * {@code java.lang.void} as a JavaTypeName.
*/
static final @NonNull JavaTypeName SUPPRESS_WARNINGS = JavaTypeName.create(SuppressWarnings.class);
+ /**
+ * {@code java.lang.SuppressWarnings} as a JavaTypeName.
+ */
+ static final @NonNull JavaTypeName VOID = JavaTypeName.create(void.class);
/**
* {@code java.util.Arrays} as a JavaTypeName.
* {@code org.opendaylight.yangtools.yang.binding.CodeHelpers} as a JavaTypeName.
*/
static final @NonNull JavaTypeName CODEHELPERS = JavaTypeName.create(CodeHelpers.class);
- /**
- * {@code org.opendaylight.yangtools.yang.binding.AugmentationHolder} as a JavaTypeName.
- */
- static final @NonNull JavaTypeName AUGMENTATION_HOLDER = JavaTypeName.create(AugmentationHolder.class);
private static final Comparator<MethodSignature> METHOD_COMPARATOR = new AlphabeticallyTypeMemberComparator<>();
private static final Type AUGMENTATION_RET_TYPE;
return null;
}
+ /**
+ * Generate a call to {@link Object#clone()} if target field represents an array. Returns an empty string otherwise.
+ *
+ * @param property Generated property
+ * @return The string used to clone the property, or an empty string
+ */
+ static final String cloneCall(final GeneratedProperty property) {
+ return property.getReturnType().getName().endsWith("[]") ? ".clone()" : "";
+ }
+
/**
* Returns set of method signature instances which contains all the methods of the <code>genType</code>
* and all the methods of the implemented interfaces.