static function assignment($stmt) { $stmt_part = static::cap($stmt); self::debug("assignment({$stmt_part})", self::DEBUG_LEVEL_CONFIGURATION); $res = parent::assignment($stmt); if (self::$debug_level < self::DEBUG_LEVEL_SCOPE_INSPECTION) { return $res; } $var_pattern = parent::name_pattern('variable'); preg_match("/^{$var_pattern}/i", $stmt, $m); if ($m && in_array($m[0], array_keys(static::$watch_list)) && in_array($m[0], array_keys(static::$scope[count(static::$scope) - 1]['vars']))) { $v = static::$scope[count(static::$scope) - 1]['vars'][$m[0]]; self::$watch_list[$m[0]] = $v; self::debug('WATCH: $' . $m[0] . '=' . self::cap($v)); } return $res; }