PHPCfg\Operand::addUsage PHP Method

addUsage() public method

public addUsage ( Op $op )
$op Op
    public function addUsage(Op $op)
    {
        foreach ($this->usages as $test) {
            if ($test === $op) {
                return $this;
            }
        }
        $this->usages[] = $op;
        return $this;
    }

Usage Example

Example #1
0
 public static function replaceVar(Operand $from, Operand $to)
 {
     foreach ($from->usages as $usage) {
         foreach ($usage->getVariableNames() as $varName) {
             $vars = $usage->{$varName};
             $newVars = [];
             if (!is_array($vars)) {
                 $vars = [$vars];
             }
             foreach ($vars as $key => $value) {
                 if ($value === $from) {
                     $newVars[$key] = $to;
                     $to->addUsage($usage);
                 } else {
                     $newVars[$key] = $value;
                 }
             }
             if (!is_array($usage->{$varName})) {
                 $usage->{$varName} = array_shift($newVars);
             } else {
                 $usage->{$varName} = $newVars;
             }
         }
     }
 }
All Usage Examples Of PHPCfg\Operand::addUsage