Я работаю над DSL, используя groovy, и, поскольку я новичок в этом языке, я борюсь за что-то.
У меня есть этот код
def from(state1) {
def closure
closure = { sensor ->
[becomes: { signal ->
// someProcess;
[and: closure]
}]
}
[to: { state2 ->
// someProcess
[when: closure]
}]
};
то, что я делаю, это для чтения такого рода сообщений
from "on" to "off" when "button" becomes "high" and "button2" becomes "high"
and "button2" becomes "high"
, необязательно. Грамматически, все работает так, как я хотел.
проблема в том, что я хотел добавить возможность обрабатывать or
также, вот так:
from "on" to "off" when "button" becomes "high" or "button2" becomes "high"
но я не знаю, как это сделать. Как я могу сделать это, чтобы добавить это, а также возможность узнать, если and
или or
иметь контрольный оператор и другой процесс для каждого
, это был два дня, когда я нахожусь на проблема ..
спасибо :)