private function replaceMagicConstants(StreamMetaData $metadata)
{
$originalUri = $metadata->uri;
$replacement = array(T_FILE => $originalUri, T_DIR => dirname($originalUri));
$tokenStream = token_get_all($metadata->source);
$transformedSource = '';
foreach ($tokenStream as $token) {
list($token, $value) = (array) $token + array(1 => $token);
if (isset($replacement[$token])) {
$value = "'" . $replacement[$token] . "'";
}
$transformedSource .= $value;
}
$metadata->source = $transformedSource;
}