Lines Matching refs:reference
21 * @param string $reference
23 public function __construct($reference) argument
27 if ($reference !== '') $reference = $this->checkDeprecation($reference);
28 if ($reference !== '') $reference = $this->checkHash($reference);
29 if ($reference !== '') $reference = $this->checkFilename($reference);
30 if ($reference !== '') $reference = $this->checkNamespace($reference);
31 if ($reference !== '') $reference = $this->checkClassPrefix($reference);
32 if ($reference !== '') $reference = $this->checkVariable($reference);
33 if ($reference !== '') $reference = $this->checkFunction($reference);
34 if ($reference !== '') $reference = $this->checkPSRClass($reference);
35 if ($reference !== '') $this->def = $reference;
65 * @param string $reference
68 protected function checkDeprecation($reference) argument
70 if (isset($this->deprecations[$reference])) {
71 return $this->deprecations[$reference];
73 return $reference;
79 * @param string $reference
82 protected function checkHash($reference) argument
84 if (strpos($reference, '#') === false) return $reference;
85 list($this->path, $this->def) = explode('#', $reference, 2);
92 * @param string $reference
95 protected function checkFilename($reference) argument
97 if (preg_match('/\.(php|js|css|html)$/', $reference)) {
99 $this->path = $reference;
102 return $reference;
108 * @param string $reference
111 protected function checkNamespace($reference) argument
113 if (strpos($reference, '\\') === false) return $reference;
115 $parts = explode('\\', $reference);
117 $reference = array_pop($parts); // last part may be more than a class
124 return $reference;
130 protected function checkClassPrefix($reference) argument
133 strpos($reference, '::') === false &&
134 strpos($reference, '->') === false
136 return $reference;
138 list($class, $reference) = preg_split('/(::|->)/', $reference, 2);
141 $this->def = $reference;
148 * @param string $reference
151 protected function checkVariable($reference) argument
153 if ($reference[0] == '$') {
154 $this->def = $reference;
157 return $reference;
163 * @param string $reference
166 protected function checkFunction($reference) argument
168 if (substr($reference, -2) == '()') {
169 $this->def = $reference;
172 if (preg_match('/\(.+?\)$/', $reference)) {
173 [$reference, /* $arguments */] = explode('(', $reference, 2);
174 $this->def = $reference;
177 return $reference;
187 protected function checkPSRClass($reference) argument
189 if (preg_match('/^[A-Z][a-z]/', $reference)) {
190 $this->def = $reference;
191 $this->path .= ' ' . $reference;
194 return $reference;