Completed
Branch TemplateInspector (5726eb)
by Josh
09:25
created

Parser   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 3

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 2
lcom 1
cbo 3
dl 0
loc 24
ccs 0
cts 9
cp 0
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A parse() 0 18 2
1
<?php
2
3
/**
4
* @package   s9e\TextFormatter
5
* @copyright Copyright (c) 2010-2017 The s9e Authors
6
* @license   http://www.opensource.org/licenses/mit-license.php The MIT License
7
*/
8
namespace s9e\TextFormatter\Plugins\Autoemail;
9
10
use s9e\TextFormatter\Plugins\ParserBase;
11
12
class Parser extends ParserBase
13
{
14
	/**
15
	* {@inheritdoc}
16
	*/
17
	public function parse($text, array $matches)
18
	{
19
		$tagName  = $this->config['tagName'];
20
		$attrName = $this->config['attrName'];
21
22
		foreach ($matches as $m)
23
		{
24
			// Create a zero-width start tag right before the address
25
			$startTag = $this->parser->addStartTag($tagName, $m[0][1], 0);
26
			$startTag->setAttribute($attrName, $m[0][0]);
27
28
			// Create a zero-width end tag right after the address
29
			$endTag = $this->parser->addEndTag($tagName, $m[0][1] + strlen($m[0][0]), 0);
30
31
			// Pair the tags together
32
			$startTag->pairWith($endTag);
33
		}
34
	}
35
}