JavaExpression check = new JavaExpression.OperatorExpression.Binary(JavaOperator.NOT_EQUALS_OBJECT, argVars[0], LiteralWrapper.NULL);
for (int i = 1, n = dc.getArity(); i < n; ++i) {
JavaExpression nextCheck = new JavaExpression.OperatorExpression.Binary(JavaOperator.NOT_EQUALS_OBJECT, argVars[i], LiteralWrapper.NULL);
check = new OperatorExpression.Binary(JavaOperator.CONDITIONAL_AND, check, nextCheck);
}
javaConstructor.addStatement(new AssertStatement(check, LiteralWrapper.make("Invalid constructor argument for " + dc.getName().getQualifiedName()), JavaTypeName.STRING));
// Add the body..
// We want to assign any fields in this class.
for (int i = 0; i < dc.getArity(); i++) {
if (commonFields.contains(dc.getNthFieldName(i))) {