UA_StatusCode UA_VariableTypeNode_copy(const UA_VariableTypeNode *src, UA_VariableTypeNode *dst) { UA_VariableTypeNode_init(dst); UA_StatusCode retval = UA_Node_copy((const UA_Node*)src, (UA_Node*)dst); dst->valueRank = src->valueRank; dst->valueSource = src->valueSource; if(src->valueSource == UA_VALUESOURCE_VARIANT) UA_Variant_copy(&src->value.variant, &dst->value.variant); else dst->value.dataSource = src->value.dataSource; if(retval) { UA_VariableTypeNode_deleteMembers(dst); return retval; } dst->isAbstract = src->isAbstract; return UA_STATUSCODE_GOOD; }
UA_VariableTypeNode * UA_VariableTypeNode_new(void) { UA_VariableTypeNode *p = (UA_VariableTypeNode*)UA_malloc(sizeof(UA_VariableTypeNode)); if(p) UA_VariableTypeNode_init(p); return p; }