Я пытаюсь добавить свой собственный enum в MotionWorks.
После создания нового типа данных доступны только следующие типы: ARRAY, STRING, STRUCT.
Написание следующего кода:
TYPE SimulationType:
(
Passing := 0,
Random := 1,
Failing := 2
) INT := 0;
END_TYPE
не компилируется.
Яскава, кажется, соответствует ENUM (согласно этому списку ), но я не могу понять, как это объявить.
Edit:
Я могу сделать следующее:
TYPE
ResultType:(Pass, Random, Fail);
END_TYPE
Но это, кажется, не создает перечисление, так как я не могу получить доступ к его значению. Я могу получить к нему доступ как к структуре.
Редактировать 2:
Если я заявляю:
TYPE
ResultType:(Pass, Random, Fail);
END_TYPE
И установить переменную
ExpectedResultType : ResultType;
Тогда в коде я пытаюсь использовать:
IF ExpectedResultType = ResultType.Pass THEN
Done := TRUE;
END_IF;
Он компилируется, но не запускается.
Попытка использовать этот код не скомпилируется:
CASE ExpectedResultType OF
ResultType.Pass:
Done := TRUE;
Error := FALSE;
ResultType.Random:
Done := TRUE;
ResultType.Fail:
Error := TRUE;
Done := FALSE;
END_CASE;