File tree Expand file tree Collapse file tree 2 files changed +26
-0
lines changed
Expand file tree Collapse file tree 2 files changed +26
-0
lines changed Original file line number Diff line number Diff line change @@ -243,6 +243,15 @@ public static function isIdentifier($value)
243243 }
244244
245245
246+ /**
247+ * @return bool
248+ */
249+ public static function isNamespace ($ value )
250+ {
251+ return is_string ($ value ) && preg_match ('#^ ' . Helpers::PHP_IDENT . '( \\\\' . Helpers::PHP_IDENT . ')*\z# ' , $ value );
252+ }
253+
254+
246255 /**
247256 * @param string
248257 * @return object
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ use Nette \PhpGenerator \Helpers ;
4+ use Tester \Assert ;
5+
6+
7+ require __DIR__ . '/../bootstrap.php ' ;
8+
9+
10+ Assert::true (Helpers::isNamespace ('Item ' ));
11+ Assert::true (Helpers::isNamespace ("\x7F" ));
12+ Assert::true (Helpers::isNamespace ("\x7F\\\x7F" ));
13+ Assert::false (Helpers::isNamespace ('0Item ' ));
14+ Assert::true (Helpers::isNamespace ('Item\Item ' ));
15+ Assert::false (Helpers::isNamespace ('Item \\\\Item ' ));
16+ Assert::false (Helpers::isNamespace ('\\Item ' ));
17+ Assert::false (Helpers::isNamespace ('Item \\' ));
You can’t perform that action at this time.
0 commit comments