def _compile(self, cont): # In words: take `x` and split to `x` and `cont` split = Split() x = self.x._compile(split) if self.greedy: split.succ = x split.split = cont else: split.succ = cont split.split = x # `Star` would return `split` return x
def _compile(self, cont): # In words: split to (`x` and return to split) and `cont` split = Split() x = self.x._compile(split) if self.greedy: split.succ = x split.split = cont else: split.succ = cont split.split = x # `Plus` would return `x` return split