8cd02c9f2936d3f2a40734eefdde760cec7bdb1e
[yaffs-website] / vendor / doctrine / common / lib / Doctrine / Common / Comparable.php
1 <?php
2 /*
3  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
4  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
5  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
6  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
7  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
8  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
9  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
10  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
11  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
12  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
13  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
14  *
15  * This software consists of voluntary contributions made by many individuals
16  * and is licensed under the MIT license. For more information, see
17  * <http://www.doctrine-project.org>.
18  */
19
20 namespace Doctrine\Common;
21
22 /**
23  * Comparable interface that allows to compare two value objects to each other for similarity.
24  *
25  * @link   www.doctrine-project.org
26  * @since  2.2
27  * @author Benjamin Eberlei <kontakt@beberlei.de>
28  * @author Guilherme Blanco <guilhermeblanco@hotmail.com>
29  */
30 interface Comparable
31 {
32     /**
33      * Compares the current object to the passed $other.
34      *
35      * Returns 0 if they are semantically equal, 1 if the other object
36      * is less than the current one, or -1 if its more than the current one.
37      *
38      * This method should not check for identity using ===, only for semantical equality for example
39      * when two different DateTime instances point to the exact same Date + TZ.
40      *
41      * @param mixed $other
42      *
43      * @return int
44      */
45     public function compareTo($other);
46 }