It is this class that parses conversion patterns and creates * a chained list of {@link LoggerPatternConverter} converters.

* * @version $Revision: 1395467 $ * @package log4php * @subpackage helpers * * @since 0.3 */ class LoggerPatternParser { /** Escape character for conversion words in the conversion pattern. */ const ESCAPE_CHAR = '%'; /** Maps conversion words to relevant converters. */ private $converterMap; /** Conversion pattern used in layout. */ private $pattern; /** Regex pattern used for parsing the conversion pattern. */ private $regex; /** * First converter in the chain. * @var LoggerPatternConverter */ private $head; /** Last converter in the chain. */ private $tail; public function __construct($pattern, $converterMap) { $this->pattern = $pattern; $this->converterMap = $converterMap; // Construct the regex pattern $this->regex = '/' . // Starting regex pattern delimiter self::ESCAPE_CHAR . // Character which marks the start of the conversion pattern '(?P[0-9.-]*)' . // Format modifiers (optional) '(?P[a-zA-Z]+)' . // The conversion word '(?P