aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/chillerlan/php-settings-container/src/SettingsContainerInterface.php
diff options
context:
space:
mode:
authorMario <mario@mariovavti.com>2024-03-14 09:35:09 +0000
committerMario <mario@mariovavti.com>2024-03-14 09:35:09 +0000
commit6bf61dfa6b585db01b607a79bd64ec9c583a9c10 (patch)
tree78698101aa58d918568dfc0020650fc337e8d3e0 /vendor/chillerlan/php-settings-container/src/SettingsContainerInterface.php
parent0e59cfb8390e4c6aee29ef73b53a4dc6b7fb581e (diff)
downloadvolse-hubzilla-6bf61dfa6b585db01b607a79bd64ec9c583a9c10.tar.gz
volse-hubzilla-6bf61dfa6b585db01b607a79bd64ec9c583a9c10.tar.bz2
volse-hubzilla-6bf61dfa6b585db01b607a79bd64ec9c583a9c10.zip
composer update and use the fixed streams php-jcs library until the floats issue will be fixed upstream. see here for reference https://codeberg.org/streams/streams/issues/151
Diffstat (limited to 'vendor/chillerlan/php-settings-container/src/SettingsContainerInterface.php')
-rw-r--r--vendor/chillerlan/php-settings-container/src/SettingsContainerInterface.php26
1 files changed, 15 insertions, 11 deletions
diff --git a/vendor/chillerlan/php-settings-container/src/SettingsContainerInterface.php b/vendor/chillerlan/php-settings-container/src/SettingsContainerInterface.php
index ddacccd29..1c9c12a73 100644
--- a/vendor/chillerlan/php-settings-container/src/SettingsContainerInterface.php
+++ b/vendor/chillerlan/php-settings-container/src/SettingsContainerInterface.php
@@ -7,30 +7,28 @@
* @copyright 2018 Smiley
* @license MIT
*/
+declare(strict_types=1);
namespace chillerlan\Settings;
-use JsonSerializable;
+use JsonSerializable, Serializable;
/**
* a generic container with magic getter and setter
*/
-interface SettingsContainerInterface extends JsonSerializable{
+interface SettingsContainerInterface extends JsonSerializable, Serializable{
/**
* Retrieve the value of $property
*
* @return mixed|null
*/
- public function __get(string $property);
+ public function __get(string $property):mixed;
/**
* Set $property to $value while avoiding private and non-existing properties
- *
- * @param string $property
- * @param mixed $value
*/
- public function __set(string $property, $value):void;
+ public function __set(string $property, mixed $value):void;
/**
* Checks if $property is set (aka. not null), excluding private properties
@@ -43,32 +41,38 @@ interface SettingsContainerInterface extends JsonSerializable{
public function __unset(string $property):void;
/**
- * @see SettingsContainerInterface::toJSON()
+ * @see \chillerlan\Settings\SettingsContainerInterface::toJSON()
*/
public function __toString():string;
/**
* Returns an array representation of the settings object
+ *
+ * The values will be run through the magic __get(), which may also call custom getters.
*/
public function toArray():array;
/**
* Sets properties from a given iterable
+ *
+ * The values will be run through the magic __set(), which may also call custom setters.
*/
- public function fromIterable(iterable $properties):SettingsContainerInterface;
+ public function fromIterable(iterable $properties):static;
/**
* Returns a JSON representation of the settings object
* @see \json_encode()
+ * @see \chillerlan\Settings\SettingsContainerInterface::toArray()
*/
- public function toJSON(int $jsonOptions = null):string;
+ public function toJSON(int|null $jsonOptions = null):string;
/**
* Sets properties from a given JSON string
*
* @throws \Exception
* @throws \JsonException
+ * @see \chillerlan\Settings\SettingsContainerInterface::fromIterable()
*/
- public function fromJSON(string $json):SettingsContainerInterface;
+ public function fromJSON(string $json):static;
}