Description
As far as I know, the only functionality of the action
flag is that it lets the backend process command headers recursively. This is also visible in the lines below: on line 311 of the removed code, the method is recursively invoked. This adds unnecessary complexity for no good reason, in my opinion. Without the action flag, it is still possible to send multiple commands at once. For instance, consider the following CQC program (in pseudo-CQC):
CQC Header. Type = CQCType.COMMAND. Length = 3 command headers
Command Header. Instruction = X. Action = False
Command Header. Instruction = Y. Action = False
Command Header. Instruction = Z. Action = False
Even though action
is set to False
, all three commands will be executed sequentially. This is my understanding of sequences and the action
flag. Am I missing something?
Regarding the trouble with the logic: During the design phase of my project, I consulted Leon to discuss some ideas and possible solutions. At that point, I had some questions regarding sequences. All these questions were answered and there are no problems anymore. In my final implementation, the sequence functionality works perfectly (albeit without the action flag, and without sequence headers).
Originally posted by @VictorPrins in #35