final class PLpgSqlExprWithOptDistinctClauseOptTargetListFromClauseWhereClauseGroupClauseHavingClauseW_ea473d71
    implements PLpgSqlExprForm
    uses Assertion
Public API: explicitly declared with @visibility public.

The PLpgSQL_Expr SQL value; generated by bin/build-models.php.

Accept a structured SQL valuedoctest
$write = static fn (\SqlSemantics\Statement\Model\PostgreSql\Value\PLpgSqlExprWithOptDistinctClauseOptTargetListFromClauseWhereClauseGroupClauseHavingClauseW_ea473d71 $value): string => \SqlSemantics\Statement\Writer::render($value);
    $write instanceof \Closure // => true

Properties§

public OptDistinctClauseForm $optDistinctClause
public OptTargetListForm $projections
public GroupClauseForm $groupBy
public WindowClauseForm $windowClause
public OptSortClauseForm $optSortClause
public OptSelectLimitForm $optSelectLimit
public OptForLockingClauseForm $optForLockingClause
public Comments $comments = new \SqlSemantics\Statement\Comments()

Methods§

public function __construct(
    public OptDistinctClauseForm $optDistinctClause,
    public OptTargetListForm $projections,
    public FromClauseForm $from,
    public WhereClauseForm $where,
    public GroupClauseForm $groupBy,
    public HavingClauseForm $having,
    public WindowClauseForm $windowClause,
    public OptSortClauseForm $optSortClause,
    public OptSelectLimitForm $optSelectLimit,
    public OptForLockingClauseForm $optForLockingClause,
    public Comments $comments = new \SqlSemantics\Statement\Comments(),
)

Supplies the SQL values of this form; comments are kept by the position of the symbol each precedes.

Parameters

$optDistinctClauseOptDistinctClauseForm
$projectionsOptTargetListForm
$fromFromClauseForm
$whereWhereClauseForm
$groupByGroupClauseForm
$havingHavingClauseForm
$windowClauseWindowClauseForm
$optSortClauseOptSortClauseForm
$optSelectLimitOptSelectLimitForm
$optForLockingClauseOptForLockingClauseForm
$commentsComments
Calls 3
public function write(Writer $writer): void
public function withOptDistinctClause(OptDistinctClauseForm $optDistinctClause): self

Returns a copy with a new optDistinctClause, preserving every other field.

Parameters

$optDistinctClauseOptDistinctClauseForm

Returns

self
Calls 1
public function withProjections(OptTargetListForm $projections): self

Returns a copy with a new projections, preserving every other field.

Parameters

$projectionsOptTargetListForm

Returns

self
Calls 1
public function withFrom(FromClauseForm $from): self

Returns a copy with a new from, preserving every other field.

Parameters

Returns

self
Calls 1
public function withWhere(WhereClauseForm $where): self

Returns a copy with a new where, preserving every other field.

Parameters

Returns

self
Calls 1
public function withGroupBy(GroupClauseForm $groupBy): self

Returns a copy with a new groupBy, preserving every other field.

Parameters

Returns

self
Calls 1
public function withHaving(HavingClauseForm $having): self

Returns a copy with a new having, preserving every other field.

Parameters

Returns

self
Calls 1
public function withWindowClause(WindowClauseForm $windowClause): self

Returns a copy with a new windowClause, preserving every other field.

Parameters

$windowClauseWindowClauseForm

Returns

self
Calls 1
public function withOptSortClause(OptSortClauseForm $optSortClause): self

Returns a copy with a new optSortClause, preserving every other field.

Parameters

$optSortClauseOptSortClauseForm

Returns

self
Calls 1
public function withOptSelectLimit(OptSelectLimitForm $optSelectLimit): self

Returns a copy with a new optSelectLimit, preserving every other field.

Parameters

$optSelectLimitOptSelectLimitForm

Returns

self
Calls 1
public function withOptForLockingClause(OptForLockingClauseForm $optForLockingClause): self

Returns a copy with a new optForLockingClause, preserving every other field.

Parameters

$optForLockingClauseOptForLockingClauseForm

Returns

self
Calls 1
public function withComments(Comments $comments): self

Returns a copy with a new comments, preserving every other field.

Parameters

$commentsComments

Returns

self
Calls 1