view vendor/consolidation/output-formatters/src/Validate/ValidationInterface.php @ 9:1fc0ff908d1f

Add another data file
author Chris Cannam
date Mon, 05 Feb 2018 12:34:32 +0000
parents 4c8ae668cc8c
children
line wrap: on
line source
<?php
namespace Consolidation\OutputFormatters\Validate;

/**
 * Formatters may implement ValidationInterface in order to indicate
 * whether a particular data structure is supported.  Any formatter that does
 * not implement ValidationInterface is assumed to only operate on arrays,
 * or data types that implement SimplifyToArrayInterface.
 */
interface ValidationInterface
{
    /**
     * Return true if the specified format is valid for use with
     * this formatter.
     */
    public function isValidDataType(\ReflectionClass $dataType);

    /**
     * Throw an IncompatibleDataException if the provided data cannot
     * be processed by this formatter.  Return the source data if it
     * is valid. The data may be encapsulated or converted if necessary.
     *
     * @param mixed $structuredData Data to validate
     *
     * @return mixed
     */
    public function validate($structuredData);
}