Page MenuHomePhabricator

D12270.id29568.diff
No OneTemporary

D12270.id29568.diff

diff --git a/src/parser/xhpast/api/XHPASTNode.php b/src/parser/xhpast/api/XHPASTNode.php
--- a/src/parser/xhpast/api/XHPASTNode.php
+++ b/src/parser/xhpast/api/XHPASTNode.php
@@ -105,7 +105,7 @@
}
}
- public function isConstantString() {
+ public function isConstantString(array $additional_types = array()) {
switch ($this->getTypeName()) {
case 'n_HEREDOC':
case 'n_STRING_SCALAR':
@@ -116,17 +116,25 @@
if ($child->getTypeName() == 'n_OPERATOR') {
continue;
}
- if (!$child->isConstantString()) {
+ if (!$child->isConstantString($additional_types)) {
return false;
}
}
return true;
default:
+ if (in_array($this->getTypeName(), $additional_types)) {
+ return true;
+ }
+
return false;
}
}
+ public function isConstantStringWithMagicConstants() {
+ return $this->isConstantString(array('n_MAGIC_SCALAR'));
+ }
+
public function getStringVariables() {
$value = $this->getConcreteString();

File Metadata

Mime Type
text/plain
Expires
Sun, Mar 30, 3:44 AM (2 w, 2 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7726677
Default Alt Text
D12270.id29568.diff (1 KB)

Event Timeline