PHPCfg\Parser::parseScalarNode PHP Method

parseScalarNode() private method

private parseScalarNode ( PhpParser\Node\Scalar $scalar )
$scalar PhpParser\Node\Scalar
    private function parseScalarNode(Node\Scalar $scalar)
    {
        switch ($scalar->getType()) {
            case 'Scalar_Encapsed':
                $op = new Op\Expr\ConcatList($this->parseExprList($scalar->parts, self::MODE_READ), $this->mapAttributes($scalar));
                $this->block->children[] = $op;
                return $op->result;
            case 'Scalar_DNumber':
            case 'Scalar_LNumber':
            case 'Scalar_String':
            case 'Scalar_EncapsedStringPart':
                return new Literal($scalar->value);
            case 'Scalar_MagicConst_Class':
                // TODO
                return new Literal("__CLASS__");
            case 'Scalar_MagicConst_Dir':
                return new Literal(dirname($this->fileName));
            case 'Scalar_MagicConst_File':
                return new Literal($this->fileName);
            case 'Scalar_MagicConst_Namespace':
                // TODO
                return new Literal("__NAMESPACE__");
            case 'Scalar_MagicConst_Method':
                // TODO
                return new Literal("__METHOD__");
            case 'Scalar_MagicConst_Function':
                // TODO
                return new Literal("__FUNCTION__");
            default:
                throw new \RuntimeException("Unknown how to deal with scalar type " . $scalar->getType());
        }
    }
Parser