diff --git a/robotlab_safety/pluto_auto.py b/robotlab_safety/pluto_auto.py index 03bc043e3016300be138ad1d501e3d471f384324..aad70ace26af7a7c20c90b658d35d160a5a4d782 100755 --- a/robotlab_safety/pluto_auto.py +++ b/robotlab_safety/pluto_auto.py @@ -24,6 +24,13 @@ class PlutoVariables: rh = [ m.group(3).format(v, pluto=self.by_name[v][0]) for v in self.by_name if re.match(regexp, v)] return("%s=%s" % (lh, '*'.join(rh))) + m = re.match('([^=]+)=OR\{(.*),(.*)\}', expr) + if m: + lh = m.group(1) + regexp = m.group(2).replace('*', '.*') + rh = [ m.group(3).format(v, pluto=self.by_name[v][0]) + for v in self.by_name if re.match(regexp, v)] + return("%s=%s" % (lh, '+'.join(rh))) raise Exception('Invalid expression', expr)