Генератор кода не поддерживает передачу свойства по ссылке на внешнюю функцию для этих типов свойств:
Свойство с методом get или методом set.
Свойство, которое использует функции валидации.
Свойство object™ System с атрибутом, таким как Logical
или PositiveInteger
, который ограничивает или изменяет значение свойства.
Вместо передачи свойства по ссылке сохраните значение свойства во временной переменной. Затем передайте временную переменную путем ссылки на внешнюю функцию. После вызова внешней функции присвойте свойству временную переменную. Для примера:
tmp = myObj.prop;
coder.ceval('myFcn', coder.ref(tmp));
myObj.prop = tmp;
coder.ceval
вызов проверяет или изменяет значение свойства в соответствии с методами доступа к свойствам, функциями валидации или атрибутами.
coder.ceval
| coder.ref
| coder.rref
| coder.wref