| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | <?php namespace Laravel\Database\Query;class Join {	/**	 * The type of join being performed.	 *	 * @var string	 */	public $type;	/**	 * The table the join clause is joining to.	 *	 * @var string	 */	public $table;	/**	 * The ON clauses for the join.	 *	 * @var array	 */	public $clauses = array();	/**	 * Create a new query join instance.	 *	 * @param  string  $type	 * @param  string  $table	 * @return void	 */	public function __construct($type, $table)	{		$this->type = $type;		$this->table = $table;	}	/**	 * Add an ON clause to the join.	 *	 * @param  string  $column1	 * @param  string  $operator	 * @param  string  $column2	 * @param  string  $connector	 * @return Join	 */	public function on($column1, $operator, $column2, $connector = 'AND')	{		$this->clauses[] = compact('column1', 'operator', 'column2', 'connector');		return $this;	}	/**	 * Add an OR ON clause to the join.	 *	 * @param  string  $column1	 * @param  string  $operator	 * @param  string  $column2	 * @return Join	 */	public function or_on($column1, $operator, $column2)	{		return $this->on($column1, $operator, $column2, 'OR');	}}
 |