28 lines
501 B
Plaintext
28 lines
501 B
Plaintext
///setParameter(type, param)
|
|
/**
|
|
* setParameter :: ParametricType -> Parameter -> ()
|
|
*
|
|
* Changes the parameter (name/link) of a parametrized type.
|
|
*
|
|
* @param type the type instance to change
|
|
* @param param the new parameter
|
|
*/
|
|
var type = argument0;
|
|
var param = argument1;
|
|
|
|
if (type.parameter == param)
|
|
exit;
|
|
|
|
with (type.parameter) {
|
|
ds_set_delete(self.types, type);
|
|
|
|
if (ds_set_empty(self.types))
|
|
delete(id);
|
|
}
|
|
|
|
with (param)
|
|
ds_set_add(self.types, type);
|
|
|
|
type.parameter = param;
|
|
|