partkeepr

fork of partkeepr
git clone https://git.e1e0.net/partkeepr.git
Log | Files | Refs | Submodules | README | LICENSE

LegacyConfigVisitor.php (1249B)


      1 <?php
      2 
      3 namespace PartKeepr\SetupBundle\Visitor;
      4 
      5 class LegacyConfigVisitor extends \PHPParser_NodeVisitorAbstract
      6 {
      7     private static $configValues = [];
      8 
      9     public function enterNode(\PHPParser_Node $node)
     10     {
     11         if ($node instanceof \PHPParser_Node_Expr_StaticCall) {
     12             if ($node->class->parts[0] == 'Configuration' && $node->name == 'setOption') {
     13                 if (array_key_exists(0, $node->args) && array_key_exists(1, $node->args)) {
     14                     if ($node->args[1]->value instanceof \PHPParser_Node_Scalar_String) {
     15                         self::$configValues[$node->args[0]->value->value] = $node->args[1]->value->value;
     16                     } elseif ($node->args[1]->value instanceof \PHPParser_Node_Scalar_LNumber) {
     17                         self::$configValues[$node->args[0]->value->value] = $node->args[1]->value->value;
     18                     } elseif ($node->args[1]->value instanceof \PHPParser_Node_Expr_ConstFetch) {
     19                         self::$configValues[$node->args[0]->value->value] = boolval($node->args[1]->value->name->parts[0]);
     20                     }
     21                 }
     22             }
     23         }
     24     }
     25 
     26     public static function getConfigValues()
     27     {
     28         return self::$configValues;
     29     }
     30 }