Completed
Push — master ( 39b3df...5ec81c )
by Richard
03:15
created
src/Parser/Sheet.php 1 patch
Braces   +31 added lines, -13 removed lines patch added patch discarded remove patch
@@ -24,8 +24,11 @@  discard block
 block discarded – undo
24 24
 			$this->file = $tss;
25 25
 			$this->rules = $this->cache->load($tss);
26 26
 			$baseDir = dirname(realpath($tss)) . DIRECTORY_SEPARATOR;
27
-			if (empty($this->rules)) $tss = file_get_contents($tss);
28
-			else return;
27
+			if (empty($this->rules)) {
28
+				$tss = file_get_contents($tss);
29
+			} else {
30
+				return;
31
+			}
29 32
 		}
30 33
 		$this->tss = $this->stripComments($tss, '//', "\n");
31 34
 		$this->tss = $this->stripComments($this->tss, '/*', '*/');
@@ -36,7 +39,9 @@  discard block
 block discarded – undo
36 39
 	}
37 40
 
38 41
 	public function parse($indexStart = 0) {
39
-		if (!empty($this->rules)) return $this->rules['rules'];
42
+		if (!empty($this->rules)) {
43
+			return $this->rules['rules'];
44
+		}
40 45
 		$rules = $this->parseTokens($indexStart);
41 46
 		usort($rules, [$this, 'sortRules']);
42 47
 		$this->checkError($rules);
@@ -50,12 +55,12 @@  discard block
 block discarded – undo
50 55
 			if ($processing = $this->processingInstructions($token, count($this->rules)+$indexStart)) {
51 56
 				$this->rules = array_merge($this->rules, $processing);
52 57
 				continue;
53
-			}
54
-			else if ($token['type'] === Tokenizer::NEW_LINE) {
58
+			} else if ($token['type'] === Tokenizer::NEW_LINE) {
55 59
 				$line++;
56 60
 				continue;
61
+			} else {
62
+				$this->addRules($token, $indexStart, $line);
57 63
 			}
58
-			else $this->addRules($token, $indexStart, $line);
59 64
 		}
60 65
 		return $this->rules;
61 66
 	}
@@ -63,14 +68,18 @@  discard block
 block discarded – undo
63 68
 	private function addRules($token, $indexStart, $line) {
64 69
 		$selector = $this->tss->from($token['type'], true)->to(Tokenizer::OPEN_BRACE);
65 70
 		$this->tss->skip(count($selector));
66
-		if (count($selector) === 0) return;
71
+		if (count($selector) === 0) {
72
+			return;
73
+		}
67 74
 
68 75
 		$newRules = $this->cssToRules($selector, count($this->rules)+$indexStart, $this->getProperties($this->tss->current()['value']), $line);
69 76
 		$this->rules = $this->writeRule($this->rules, $newRules);
70 77
 	}
71 78
 
72 79
 	private function checkError($rules) {
73
-		if (empty($rules) && count($this->tss) > 0) throw new \Exception('No TSS rules parsed');
80
+		if (empty($rules) && count($this->tss) > 0) {
81
+			throw new \Exception('No TSS rules parsed');
82
+		}
74 83
 	}
75 84
 
76 85
 	private function CssToRules($selector, $index, $properties, $line) {
@@ -97,7 +106,9 @@  discard block
 block discarded – undo
97 106
 	}
98 107
 
99 108
 	private function processingInstructions($token, $indexStart) {
100
-		if ($token['type'] !== Tokenizer::AT_SIGN) return false;
109
+		if ($token['type'] !== Tokenizer::AT_SIGN) {
110
+			return false;
111
+		}
101 112
 		$tokens = $this->tss->from(Tokenizer::AT_SIGN, false)->to(Tokenizer::SEMI_COLON, false);
102 113
 		$funcName = $tokens->from(Tokenizer::NAME, true)->read();
103 114
 		$args = $this->valueParser->parseTokens($tokens->from(Tokenizer::NAME));
@@ -109,8 +120,11 @@  discard block
 block discarded – undo
109 120
 	}
110 121
 
111 122
 	private function import($args, $indexStart) {
112
-		if ($this->file !== null) $fileName = dirname(realpath($this->file)) . DIRECTORY_SEPARATOR . $args[0];
113
-		else $fileName = $args[0];
123
+		if ($this->file !== null) {
124
+			$fileName = dirname(realpath($this->file)) . DIRECTORY_SEPARATOR . $args[0];
125
+		} else {
126
+			$fileName = $args[0];
127
+		}
114 128
 		$this->import[] = $fileName;
115 129
 		$sheet = new Sheet($fileName, $this->baseDir, $this->xPath, $this->valueParser, $this->cache);
116 130
 		return $sheet->parse($indexStart);
@@ -118,7 +132,9 @@  discard block
 block discarded – undo
118 132
 
119 133
 	private function sortRules($a, $b) {
120 134
 		//If they have the same depth, compare on index
121
-		if ($a->depth === $b->depth) return $a->index < $b->index ? -1 : 1;
135
+		if ($a->depth === $b->depth) {
136
+			return $a->index < $b->index ? -1 : 1;
137
+		}
122 138
 
123 139
 		return ($a->depth < $b->depth) ? -1 : 1;
124 140
 	}
@@ -127,7 +143,9 @@  discard block
 block discarded – undo
127 143
 		$pos = 0;
128 144
 		while (($pos = strpos($str, $open, $pos)) !== false) {
129 145
 			$end = strpos($str, $close, $pos);
130
-			if ($end === false) break;
146
+			if ($end === false) {
147
+				break;
148
+			}
131 149
 			$str = substr_replace($str, '', $pos, $end-$pos+strlen($close));
132 150
 		}
133 151
 
Please login to merge, or discard this patch.