2015-08-17 17:00:26 -07:00
< ? php
/*
* This file is part of the Symfony package .
*
* ( c ) Fabien Potencier < fabien @ symfony . com >
*
* For the full copyright and license information , please view the LICENSE
* file that was distributed with this source code .
*/
namespace Symfony\Component\Validator ;
/**
* A list of constraint violations .
*
* @ author Bernhard Schussek < bschussek @ gmail . com >
*/
interface ConstraintViolationListInterface extends \Traversable , \Countable , \ArrayAccess
{
/**
* Adds a constraint violation to this list .
*
2017-02-02 16:28:38 -08:00
* @ param ConstraintViolationInterface $violation The violation to add
2015-08-17 17:00:26 -07:00
*/
public function add ( ConstraintViolationInterface $violation );
/**
* Merges an existing violation list into this list .
*
2017-02-02 16:28:38 -08:00
* @ param ConstraintViolationListInterface $otherList The list to merge
2015-08-17 17:00:26 -07:00
*/
public function addAll ( ConstraintViolationListInterface $otherList );
/**
* Returns the violation at a given offset .
*
2017-02-02 16:28:38 -08:00
* @ param int $offset The offset of the violation
2015-08-17 17:00:26 -07:00
*
2017-02-02 16:28:38 -08:00
* @ return ConstraintViolationInterface The violation
2015-08-17 17:00:26 -07:00
*
* @ throws \OutOfBoundsException If the offset does not exist .
*/
public function get ( $offset );
/**
* Returns whether the given offset exists .
*
2017-02-02 16:28:38 -08:00
* @ param int $offset The violation offset
2015-08-17 17:00:26 -07:00
*
2017-02-02 16:28:38 -08:00
* @ return bool Whether the offset exists
2015-08-17 17:00:26 -07:00
*/
public function has ( $offset );
/**
* Sets a violation at a given offset .
*
2017-02-02 16:28:38 -08:00
* @ param int $offset The violation offset
* @ param ConstraintViolationInterface $violation The violation
2015-08-17 17:00:26 -07:00
*/
public function set ( $offset , ConstraintViolationInterface $violation );
/**
* Removes a violation at a given offset .
*
2017-02-02 16:28:38 -08:00
* @ param int $offset The offset to remove
2015-08-17 17:00:26 -07:00
*/
public function remove ( $offset );
}