The condition logic works as if you had all of your open brackets up front, and then close one for each condition. It's easy to program that way, and I've done that myself a few times in other projects. But it does have some limitations, like you can't directly doHi,
OK, I can see that performing how you say it should and I wasn't aware of that.
However, I was wanting the nested macro to have it's own condition. I was hoping to split the condition logic over several macros to handle things like
If condition A and (condition B or condition C) then
Do you have any documentation on condition evaluation? For instance is it short circuit evaluation? How do I achieve bracket groups etc?
cheers,
David
((A or B) and (C or D))
.But we also have the Macro condition here. So what you might do, is make a macro that has part of your logic in it, and no actions, and then use the Macro condition to see if that macro is true. Something like:
Macro 1: (C or D), no actions
Macro 2: ((A or B) and Macro 1), do something
No short-circuiting. Everything is always evaluated, even if it would make no difference. Again, easy to program, at the expense of some runtime efficiency and maybe some side-effects. A big side-effect would be running an external process to get its return code, and that external process does something else too. That's not *necessarily* bad in all cases, but definitely something to be aware of!
Last edited: