|  | @@ 289-310 (lines=22) @@ | 
                                                            
                                    | 286 |  |      * | 
                                                            
                                    | 287 |  |      * @SuppressWarnings(PHPMD.StaticAccess) | 
                                                            
                                    | 288 |  |      */ | 
                                                            
                                    | 289 |  |     private static function executeAndBlock( | 
                                                            
                                    | 290 |  |         $input, | 
                                                            
                                    | 291 |  |         int $blockIndex, | 
                                                            
                                    | 292 |  |         array $blocks, | 
                                                            
                                    | 293 |  |         ContextStorageInterface $context, | 
                                                            
                                    | 294 |  |         CaptureAggregatorInterface $captures | 
                                                            
                                    | 295 |  |     ): array { | 
                                                            
                                    | 296 |  |         $block = $blocks[$blockIndex]; | 
                                                            
                                    | 297 |  |         assert(static::getBlockType($block) === BlockSerializer::TYPE__AND_EXPRESSION); | 
                                                            
                                    | 298 |  |  | 
                                                            
                                    | 299 |  |         $primaryIndex = $block[BlockSerializer::AND_EXPRESSION_PRIMARY]; | 
                                                            
                                    | 300 |  |         $result       = static::executeBlockImpl($input, $primaryIndex, $blocks, $context, $captures); | 
                                                            
                                    | 301 |  |         if (BlockReplies::isResultSuccessful($result) === true) { | 
                                                            
                                    | 302 |  |             $nextInput      = BlockReplies::extractResultOutput($result); | 
                                                            
                                    | 303 |  |             $secondaryIndex = $block[BlockSerializer::AND_EXPRESSION_SECONDARY]; | 
                                                            
                                    | 304 |  |             $result         = static::executeBlockImpl($nextInput, $secondaryIndex, $blocks, $context, $captures); | 
                                                            
                                    | 305 |  |         } | 
                                                            
                                    | 306 |  |  | 
                                                            
                                    | 307 |  |         static::captureSuccessfulBlockResultIfEnabled($result, $block, $captures); | 
                                                            
                                    | 308 |  |  | 
                                                            
                                    | 309 |  |         return $result; | 
                                                            
                                    | 310 |  |     } | 
                                                            
                                    | 311 |  |  | 
                                                            
                                    | 312 |  |     /** | 
                                                            
                                    | 313 |  |      * @param mixed                      $input | 
                                                                                
                                |  | @@ 324-346 (lines=23) @@ | 
                                                            
                                    | 321 |  |      * @SuppressWarnings(PHPMD.StaticAccess) | 
                                                            
                                    | 322 |  |      * @SuppressWarnings(PHPMD.ElseExpression) | 
                                                            
                                    | 323 |  |      */ | 
                                                            
                                    | 324 |  |     private static function executeOrBlock( | 
                                                            
                                    | 325 |  |         $input, | 
                                                            
                                    | 326 |  |         int $blockIndex, | 
                                                            
                                    | 327 |  |         array $blocks, | 
                                                            
                                    | 328 |  |         ContextStorageInterface $context, | 
                                                            
                                    | 329 |  |         CaptureAggregatorInterface $captures | 
                                                            
                                    | 330 |  |     ): array { | 
                                                            
                                    | 331 |  |         $block = $blocks[$blockIndex]; | 
                                                            
                                    | 332 |  |         assert(static::getBlockType($block) === BlockSerializer::TYPE__OR_EXPRESSION); | 
                                                            
                                    | 333 |  |  | 
                                                            
                                    | 334 |  |         $primaryIndex      = $block[BlockSerializer::OR_EXPRESSION_PRIMARY]; | 
                                                            
                                    | 335 |  |         $resultFromPrimary = static::executeBlockImpl($input, $primaryIndex, $blocks, $context, $captures); | 
                                                            
                                    | 336 |  |         if (BlockReplies::isResultSuccessful($resultFromPrimary) === true) { | 
                                                            
                                    | 337 |  |             $result = $resultFromPrimary; | 
                                                            
                                    | 338 |  |         } else { | 
                                                            
                                    | 339 |  |             $secondaryIndex = $block[BlockSerializer::OR_EXPRESSION_SECONDARY]; | 
                                                            
                                    | 340 |  |             $result         = static::executeBlockImpl($input, $secondaryIndex, $blocks, $context, $captures); | 
                                                            
                                    | 341 |  |         } | 
                                                            
                                    | 342 |  |  | 
                                                            
                                    | 343 |  |         static::captureSuccessfulBlockResultIfEnabled($result, $block, $captures); | 
                                                            
                                    | 344 |  |  | 
                                                            
                                    | 345 |  |         return $result; | 
                                                            
                                    | 346 |  |     } | 
                                                            
                                    | 347 |  |  | 
                                                            
                                    | 348 |  |     /** | 
                                                            
                                    | 349 |  |      * @param array $serializedBlocks |