joinType = $joinType; $this->join = $join; $this->alias = $alias; $this->conditionType = $conditionType; $this->condition = $condition; $this->indexBy = $indexBy; } /** * @return string * @psalm-return self::INNER_JOIN|self::LEFT_JOIN */ public function getJoinType() { return $this->joinType; } /** * @return string */ public function getJoin() { return $this->join; } /** * @return string|null */ public function getAlias() { return $this->alias; } /** * @return string|null * @psalm-return self::ON|self::WITH|null */ public function getConditionType() { return $this->conditionType; } /** * @return string|Comparison|Composite|null */ public function getCondition() { return $this->condition; } /** * @return string|null */ public function getIndexBy() { return $this->indexBy; } /** * @return string */ public function __toString() { return strtoupper($this->joinType) . ' JOIN ' . $this->join . ($this->alias ? ' ' . $this->alias : '') . ($this->indexBy ? ' INDEX BY ' . $this->indexBy : '') . ($this->condition ? ' ' . strtoupper($this->conditionType) . ' ' . $this->condition : ''); } }