c78fb42ad46cb7c2c8891bf7a15b784b7afe41e1
[yaffs-website] / vendor / symfony / validator / Mapping / CascadingStrategy.php
1 <?php
2
3 /*
4  * This file is part of the Symfony package.
5  *
6  * (c) Fabien Potencier <fabien@symfony.com>
7  *
8  * For the full copyright and license information, please view the LICENSE
9  * file that was distributed with this source code.
10  */
11
12 namespace Symfony\Component\Validator\Mapping;
13
14 /**
15  * Specifies whether an object should be cascaded.
16  *
17  * Cascading is relevant for any node type but class nodes. If such a node
18  * contains an object of value, and if cascading is enabled, then the node
19  * traverser will try to find class metadata for that object and validate the
20  * object against that metadata.
21  *
22  * If no metadata is found for a cascaded object, and if that object implements
23  * {@link \Traversable}, the node traverser will iterate over the object and
24  * cascade each object or collection contained within, unless iteration is
25  * prohibited by the specified {@link TraversalStrategy}.
26  *
27  * Although the constants currently represent a boolean switch, they are
28  * implemented as bit mask in order to allow future extensions.
29  *
30  * @author Bernhard Schussek <bschussek@gmail.com>
31  *
32  * @see TraversalStrategy
33  */
34 class CascadingStrategy
35 {
36     /**
37      * Specifies that a node should not be cascaded.
38      */
39     const NONE = 1;
40
41     /**
42      * Specifies that a node should be cascaded.
43      */
44     const CASCADE = 2;
45
46     /**
47      * Not instantiable.
48      */
49     private function __construct()
50     {
51     }
52 }