summaryrefslogtreecommitdiffstats
path: root/vendor/ipl/sql/src/ExpressionInterface.php
blob: 9ebe5ee0a240bec48db5a5d57f14db7d8093fde1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php

namespace ipl\Sql;

/**
 * Interface for database expressions that do need quoting or escaping, e.g. new Expression('NOW()');
 */
interface ExpressionInterface
{
    /**
     * Get the statement of the expression
     *
     * @return string
     */
    public function getStatement();

    /**
     * Get the columns used by the expression
     *
     * @return array
     */
    public function getColumns();

    /**
     * Set the columns to use by the expression
     *
     * @param array $columns
     *
     * @return $this
     */
    public function setColumns(array $columns);

    /**
     * Get the values for the expression
     *
     * @return array
     */
    public function getValues();
}