public com.robotraconteur.param.ParameterInfo ToRRInfo()
        {
            var info = new com.robotraconteur.param.ParameterInfo();

            CopyTo(info);
            return(info);
        }
 public void CopyTo(com.robotraconteur.param.ParameterInfo info)
 {
     info.parameter_identifier = parameter_identifier?.ToRRInfo();
     info.parameter_class      = parameter_class?.ToRRInfo();
     info.data_type            = data_type?.ToRRInfo();
     info.user_description     = user_description ?? "";
     info.default_value        = default_value?.value;
     info.min_value            = min_value?.value;
     info.max_value            = max_value?.value;
     info.enum_values          = enum_values?.ToDictionary(x => x.Key, x => x.Value?.value);
     info.extended             = extended?.ToDictionary(x => x.Key, x => x.Value?.value);
 }