original_string: protected function extractStyleAttributes($xmlReader)
      {
          while ($xmlReader->read()) {
              if ($xmlReader->isPositionedOnStartingNode(self::XML_NODE_XF)) {
                  $numFmtId = $xmlReader->getAttribute(self::XML_ATTRIBUTE_NUM_FMT_ID);
                  $normalizedNumFmtId = ($numFmtId !== null) ? intval($numFmtId) : null;
  
                  $applyNumberFormat = $xmlReader->getAttribute(self::XML_ATTRIBUTE_APPLY_NUMBER_FORMAT);
                  $normalizedApplyNumberFormat = ($applyNumberFormat !== null) ? !!$applyNumberFormat : null;
  
                  $this->stylesAttributes[] = [
                      self::XML_ATTRIBUTE_NUM_FMT_ID => $normalizedNumFmtId,
                      self::XML_ATTRIBUTE_APPLY_NUMBER_FORMAT => $normalizedApplyNumberFormat,
                  ];
              } else if ($xmlReader->isPositionedOnEndingNode(self::XML_NODE_CELL_XFS)) {
                  // Once done reading "cellXfs" node's children
                  break;
              }
          }
      }
code: protected function extractStyleAttributes($xmlReader)
      {
          while ($xmlReader->read()) {
              if ($xmlReader->isPositionedOnStartingNode(self::XML_NODE_XF)) {
                  $numFmtId = $xmlReader->getAttribute(self::XML_ATTRIBUTE_NUM_FMT_ID);
                  $normalizedNumFmtId = ($numFmtId !== null) ? intval($numFmtId) : null;
  
                  $applyNumberFormat = $xmlReader->getAttribute(self::XML_ATTRIBUTE_APPLY_NUMBER_FORMAT);
                  $normalizedApplyNumberFormat = ($applyNumberFormat !== null) ? !!$applyNumberFormat : null;
  
                  $this->stylesAttributes[] = [
                      self::XML_ATTRIBUTE_NUM_FMT_ID => $normalizedNumFmtId,
                      self::XML_ATTRIBUTE_APPLY_NUMBER_FORMAT => $normalizedApplyNumberFormat,
                  ];
              } else if ($xmlReader->isPositionedOnEndingNode(self::XML_NODE_CELL_XFS)) {
                  // Once done reading "cellXfs" node's children
                  break;
              }
          }
      }
code_tokens: protected function extractStyleAttributes ( $ xmlReader ) { while ( $ xmlReader -> read ( ) ) { if ( $ xmlReader -> isPositionedOnStartingNode ( self :: XML_NODE_XF ) ) { $ numFmtId = $ xmlReader -> getAttribute ( self :: XML_ATTRIBUTE_NUM_FMT_ID ) ; $ normalizedNumFmtId = ( $ numFmtId !== null ) ? intval ( $ numFmtId ) : null ; $ applyNumberFormat = $ xmlReader -> getAttribute ( self :: XML_ATTRIBUTE_APPLY_NUMBER_FORMAT ) ; $ normalizedApplyNumberFormat = ( $ applyNumberFormat !== null ) ? ! ! $ applyNumberFormat : null ; $ this -> stylesAttributes [ ] = [ self :: XML_ATTRIBUTE_NUM_FMT_ID => $ normalizedNumFmtId , self :: XML_ATTRIBUTE_APPLY_NUMBER_FORMAT => $ normalizedApplyNumberFormat , ] ; } else if ( $ xmlReader -> isPositionedOnEndingNode ( self :: XML_NODE_CELL_XFS ) ) { // Once done reading "cellXfs" node's children break ; } } }
docstring: Extracts style attributes from the "xf" nodes, inside the "cellXfs" section.
  For simplicity, the styles attributes are kept in memory. This is possible thanks
  to the reuse of styles. So 1 million cells should not use 1 million styles.
  
  @param \Box\Spout\Reader\Wrapper\XMLReader $xmlReader XML Reader positioned on the "cellXfs" node
  @return void
docstring_tokens: Extracts style attributes from the xf nodes inside the cellXfs section . For simplicity the styles attributes are kept in memory . This is possible thanks to the reuse of styles . So 1 million cells should not use 1 million styles .