26 lines
579 B
PHP
26 lines
579 B
PHP
<?php
|
|
/**
|
|
* @author Daniel J. Summers <daniel@bitbadger.solutions>
|
|
* @license MIT
|
|
*/
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace BitBadger\PDODocument\Mapper;
|
|
|
|
/**
|
|
* Map an associative array of results to a domain class
|
|
*
|
|
* @template T The type of document retrieved by this mapper
|
|
*/
|
|
interface Mapper
|
|
{
|
|
/**
|
|
* Map a result to the specified type
|
|
*
|
|
* @param array<int|string, mixed> $result An associative array representing a single database result
|
|
* @return T The item mapped from the given result
|
|
*/
|
|
public function map(array $result): mixed;
|
|
}
|