HEX
Server: Apache
System: Linux webm004.cluster121.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64
User: grainesdfo (155059)
PHP: 5.4.45
Disabled: _dyuweyrj4,_dyuweyrj4r,dl
Upload Files
File: /home/grainesdfo/www/wp-content/plugins/tablepress/libraries/vendor/PhpSpreadsheet/NamedRange.php
<?php

namespace TablePress\PhpOffice\PhpSpreadsheet;

use TablePress\PhpOffice\PhpSpreadsheet\Cell\Coordinate;
use TablePress\PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;

class NamedRange extends DefinedName
{
	/**
	 * Create a new Named Range.
	 */
	public function __construct(
		string $name,
		?Worksheet $worksheet = null,
		string $range = 'A1',
		bool $localOnly = false,
		?Worksheet $scope = null
	) {
		if ($worksheet === null && $scope === null) {
			throw new Exception('You must specify a worksheet or a scope for a Named Range');
		}
		parent::__construct($name, $worksheet, $range, $localOnly, $scope);
	}

	/**
	 * Get the range value.
	 */
	public function getRange(): string
	{
		return $this->value;
	}

	/**
	 * Set the range value.
	 */
	public function setRange(string $range): self
	{
		if (!empty($range)) {
			$this->value = $range;
		}

		return $this;
	}

	public function getCellsInRange(): array
	{
		$range = $this->value;
		if (str_starts_with($range, '=')) {
			$range = substr($range, 1);
		}

		return Coordinate::extractAllCellReferencesInRange($range);
	}
}