- Fixed some non-nullable defaulted to null vars in functions - Added a new diff method for entities which skips nullable values if they are not defined.
26 lines
1.3 KiB
PHP
26 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace Ulmus\Entity;
|
|
|
|
use Ulmus\Common\{ EntityField, EntityResolver };
|
|
use Ulmus\{ConnectionAdapter,
|
|
EntityCollection,
|
|
QueryBuilder\QueryBuilderInterface,
|
|
Repository,
|
|
SearchRequest\SearchableInterface};
|
|
|
|
interface EntityInterface extends SearchableInterface /* extends \JsonSerializable */
|
|
{
|
|
public function fromArray(iterable $dataset) : static;
|
|
public function entityGetDataset(bool $includeRelations = false, bool $returnSource = false) : array;
|
|
public function toArray($includeRelations = false, array $filterFields = []) : array;
|
|
public function toCollection() : EntityCollection;
|
|
public function isLoaded() : bool;
|
|
public function jsonSerialize() : mixed;
|
|
public static function resolveEntity() : EntityResolver;
|
|
public static function repository(string $alias = Repository::DEFAULT_ALIAS, ?ConnectionAdapter $adapter = null) : Repository;
|
|
public static function entityCollection(...$arguments) : EntityCollection;
|
|
public static function queryBuilder() : QueryBuilderInterface;
|
|
public static function field($name, null|string|false $alias = Repository::DEFAULT_ALIAS) : EntityField;
|
|
public static function fields(array $fields, null|string|false $alias = Repository::DEFAULT_ALIAS, string $separator = ', ') : string;
|
|
} |