name: Builder class_comment: '# * @template TModel of \Illuminate\Database\Eloquent\Model # * # * @property-read HigherOrderBuilderProxy $orWhere # * @property-read HigherOrderBuilderProxy $whereNot # * @property-read HigherOrderBuilderProxy $orWhereNot # * # * @mixin \Illuminate\Database\Query\Builder' dependencies: - name: BadMethodCallException type: class source: BadMethodCallException - name: Closure type: class source: Closure - name: Exception type: class source: Exception - name: BuilderContract type: class source: Illuminate\Contracts\Database\Eloquent\Builder - name: Expression type: class source: Illuminate\Contracts\Database\Query\Expression - name: Arrayable type: class source: Illuminate\Contracts\Support\Arrayable - name: BuildsQueries type: class source: Illuminate\Database\Concerns\BuildsQueries - name: QueriesRelationships type: class source: Illuminate\Database\Eloquent\Concerns\QueriesRelationships - name: BelongsToMany type: class source: Illuminate\Database\Eloquent\Relations\BelongsToMany - name: Relation type: class source: Illuminate\Database\Eloquent\Relations\Relation - name: QueryBuilder type: class source: Illuminate\Database\Query\Builder - name: RecordsNotFoundException type: class source: Illuminate\Database\RecordsNotFoundException - name: UniqueConstraintViolationException type: class source: Illuminate\Database\UniqueConstraintViolationException - name: Paginator type: class source: Illuminate\Pagination\Paginator - name: Arr type: class source: Illuminate\Support\Arr - name: Str type: class source: Illuminate\Support\Str - name: ForwardsCalls type: class source: Illuminate\Support\Traits\ForwardsCalls - name: ReflectionClass type: class source: ReflectionClass - name: ReflectionMethod type: class source: ReflectionMethod properties: - name: query visibility: protected comment: "# * @template TModel of \\Illuminate\\Database\\Eloquent\\Model\n# *\n\ # * @property-read HigherOrderBuilderProxy $orWhere\n# * @property-read HigherOrderBuilderProxy\ \ $whereNot\n# * @property-read HigherOrderBuilderProxy $orWhereNot\n# *\n# *\ \ @mixin \\Illuminate\\Database\\Query\\Builder\n# */\n# class Builder implements\ \ BuilderContract\n# {\n# /** @use \\Illuminate\\Database\\Concerns\\BuildsQueries\ \ */\n# use BuildsQueries, ForwardsCalls, QueriesRelationships {\n# BuildsQueries::sole\ \ as baseSole;\n# }\n# \n# /**\n# * The base query builder instance.\n# *\n# *\ \ @var \\Illuminate\\Database\\Query\\Builder" - name: model visibility: protected comment: '# * The model being queried. # * # * @var TModel' - name: eagerLoad visibility: protected comment: '# * The relationships that should be eager loaded. # * # * @var array' - name: macros visibility: protected comment: '# * All of the globally registered builder macros. # * # * @var array' - name: localMacros visibility: protected comment: '# * All of the locally registered builder macros. # * # * @var array' - name: onDelete visibility: protected comment: '# * A replacement for the typical delete function. # * # * @var \Closure' - name: propertyPassthru visibility: protected comment: '# * The properties that should be returned from query builder. # * # * @var string[]' - name: passthru visibility: protected comment: '# * The methods that should be returned from query builder. # * # * @var string[]' - name: scopes visibility: protected comment: '# * Applied global scopes. # * # * @var array' - name: removedScopes visibility: protected comment: '# * Removed global scopes. # * # * @var array' - name: afterQueryCallbacks visibility: protected comment: '# * The callbacks that should be invoked after retrieving data from the database. # * # * @var array' methods: - name: __construct visibility: public parameters: - name: query comment: "# * @template TModel of \\Illuminate\\Database\\Eloquent\\Model\n# *\n\ # * @property-read HigherOrderBuilderProxy $orWhere\n# * @property-read HigherOrderBuilderProxy\ \ $whereNot\n# * @property-read HigherOrderBuilderProxy $orWhereNot\n# *\n# *\ \ @mixin \\Illuminate\\Database\\Query\\Builder\n# */\n# class Builder implements\ \ BuilderContract\n# {\n# /** @use \\Illuminate\\Database\\Concerns\\BuildsQueries\ \ */\n# use BuildsQueries, ForwardsCalls, QueriesRelationships {\n# BuildsQueries::sole\ \ as baseSole;\n# }\n# \n# /**\n# * The base query builder instance.\n# *\n# *\ \ @var \\Illuminate\\Database\\Query\\Builder\n# */\n# protected $query;\n# \n\ # /**\n# * The model being queried.\n# *\n# * @var TModel\n# */\n# protected $model;\n\ # \n# /**\n# * The relationships that should be eager loaded.\n# *\n# * @var array\n\ # */\n# protected $eagerLoad = [];\n# \n# /**\n# * All of the globally registered\ \ builder macros.\n# *\n# * @var array\n# */\n# protected static $macros = [];\n\ # \n# /**\n# * All of the locally registered builder macros.\n# *\n# * @var array\n\ # */\n# protected $localMacros = [];\n# \n# /**\n# * A replacement for the typical\ \ delete function.\n# *\n# * @var \\Closure\n# */\n# protected $onDelete;\n# \n\ # /**\n# * The properties that should be returned from query builder.\n# *\n#\ \ * @var string[]\n# */\n# protected $propertyPassthru = [\n# 'from',\n# ];\n\ # \n# /**\n# * The methods that should be returned from query builder.\n# *\n\ # * @var string[]\n# */\n# protected $passthru = [\n# 'aggregate',\n# 'average',\n\ # 'avg',\n# 'count',\n# 'dd',\n# 'ddrawsql',\n# 'doesntexist',\n# 'doesntexistor',\n\ # 'dump',\n# 'dumprawsql',\n# 'exists',\n# 'existsor',\n# 'explain',\n# 'getbindings',\n\ # 'getconnection',\n# 'getgrammar',\n# 'getrawbindings',\n# 'implode',\n# 'insert',\n\ # 'insertgetid',\n# 'insertorignore',\n# 'insertusing',\n# 'insertorignoreusing',\n\ # 'max',\n# 'min',\n# 'raw',\n# 'rawvalue',\n# 'sum',\n# 'tosql',\n# 'torawsql',\n\ # ];\n# \n# /**\n# * Applied global scopes.\n# *\n# * @var array\n# */\n# protected\ \ $scopes = [];\n# \n# /**\n# * Removed global scopes.\n# *\n# * @var array\n\ # */\n# protected $removedScopes = [];\n# \n# /**\n# * The callbacks that should\ \ be invoked after retrieving data from the database.\n# *\n# * @var array\n#\ \ */\n# protected $afterQueryCallbacks = [];\n# \n# /**\n# * Create a new Eloquent\ \ query builder instance.\n# *\n# * @param \\Illuminate\\Database\\Query\\Builder\ \ $query\n# * @return void" - name: make visibility: public parameters: - name: attributes default: '[]' comment: '# * Create and return an un-saved model instance. # * # * @param array $attributes # * @return TModel' - name: withGlobalScope visibility: public parameters: - name: identifier - name: scope comment: '# * Register a new global scope. # * # * @param string $identifier # * @param \Illuminate\Database\Eloquent\Scope|\Closure $scope # * @return $this' - name: withoutGlobalScope visibility: public parameters: - name: scope comment: '# * Remove a registered global scope. # * # * @param \Illuminate\Database\Eloquent\Scope|string $scope # * @return $this' - name: withoutGlobalScopes visibility: public parameters: - name: scopes default: 'null' comment: '# * Remove all or passed registered global scopes. # * # * @param array|null $scopes # * @return $this' - name: removedScopes visibility: public parameters: [] comment: '# * Get an array of global scopes that were removed from the query. # * # * @return array' - name: whereKey visibility: public parameters: - name: id comment: '# * Add a where clause on the primary key to the query. # * # * @param mixed $id # * @return $this' - name: whereKeyNot visibility: public parameters: - name: id comment: '# * Add a where clause on the primary key to the query. # * # * @param mixed $id # * @return $this' - name: where visibility: public parameters: - name: column - name: operator default: 'null' - name: value default: 'null' - name: boolean default: '''and''' comment: '# * Add a basic where clause to the query. # * # * @param (\Closure(static): mixed)|string|array|\Illuminate\Contracts\Database\Query\Expression $column # * @param mixed $operator # * @param mixed $value # * @param string $boolean # * @return $this' - name: firstWhere visibility: public parameters: - name: column - name: operator default: 'null' - name: value default: 'null' - name: boolean default: '''and''' comment: '# * Add a basic where clause to the query, and return the first result. # * # * @param (\Closure(static): mixed)|string|array|\Illuminate\Contracts\Database\Query\Expression $column # * @param mixed $operator # * @param mixed $value # * @param string $boolean # * @return TModel|null' - name: orWhere visibility: public parameters: - name: column - name: operator default: 'null' - name: value default: 'null' comment: '# * Add an "or where" clause to the query. # * # * @param (\Closure(static): mixed)|array|string|\Illuminate\Contracts\Database\Query\Expression $column # * @param mixed $operator # * @param mixed $value # * @return $this' - name: whereNot visibility: public parameters: - name: column - name: operator default: 'null' - name: value default: 'null' - name: boolean default: '''and''' comment: '# * Add a basic "where not" clause to the query. # * # * @param (\Closure(static): mixed)|string|array|\Illuminate\Contracts\Database\Query\Expression $column # * @param mixed $operator # * @param mixed $value # * @param string $boolean # * @return $this' - name: orWhereNot visibility: public parameters: - name: column - name: operator default: 'null' - name: value default: 'null' comment: '# * Add an "or where not" clause to the query. # * # * @param (\Closure(static): mixed)|array|string|\Illuminate\Contracts\Database\Query\Expression $column # * @param mixed $operator # * @param mixed $value # * @return $this' - name: latest visibility: public parameters: - name: column default: 'null' comment: '# * Add an "order by" clause for a timestamp to the query. # * # * @param string|\Illuminate\Contracts\Database\Query\Expression $column # * @return $this' - name: oldest visibility: public parameters: - name: column default: 'null' comment: '# * Add an "order by" clause for a timestamp to the query. # * # * @param string|\Illuminate\Contracts\Database\Query\Expression $column # * @return $this' - name: hydrate visibility: public parameters: - name: items comment: '# * Create a collection of models from plain arrays. # * # * @param array $items # * @return \Illuminate\Database\Eloquent\Collection' - name: fromQuery visibility: public parameters: - name: query - name: bindings default: '[]' comment: '# * Create a collection of models from a raw query. # * # * @param string $query # * @param array $bindings # * @return \Illuminate\Database\Eloquent\Collection' - name: find visibility: public parameters: - name: id - name: columns default: '[''*'']' comment: '# * Find a model by its primary key. # * # * @param mixed $id # * @param array|string $columns # * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TModel|null)' - name: findMany visibility: public parameters: - name: ids - name: columns default: '[''*'']' comment: '# * Find multiple models by their primary keys. # * # * @param \Illuminate\Contracts\Support\Arrayable|array $ids # * @param array|string $columns # * @return \Illuminate\Database\Eloquent\Collection' - name: findOrFail visibility: public parameters: - name: id - name: columns default: '[''*'']' comment: '# * Find a model by its primary key or throw an exception. # * # * @param mixed $id # * @param array|string $columns # * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TModel) # * # * @throws \Illuminate\Database\Eloquent\ModelNotFoundException' - name: findOrNew visibility: public parameters: - name: id - name: columns default: '[''*'']' comment: '# * Find a model by its primary key or return fresh model instance. # * # * @param mixed $id # * @param array|string $columns # * @return ($id is (\Illuminate\Contracts\Support\Arrayable|array) ? \Illuminate\Database\Eloquent\Collection : TModel)' - name: findOr visibility: public parameters: - name: id - name: columns default: '[''*'']' - name: callback default: 'null' comment: '# * Find a model by its primary key or call a callback. # * # * @template TValue # * # * @param mixed $id # * @param (\Closure(): TValue)|list|string $columns # * @param (\Closure(): TValue)|null $callback # * @return ( # * $id is (\Illuminate\Contracts\Support\Arrayable|array) # * ? \Illuminate\Database\Eloquent\Collection # * : TModel|TValue # * )' - name: firstOrNew visibility: public parameters: - name: attributes default: '[]' - name: values default: '[]' comment: '# * Get the first record matching the attributes or instantiate it. # * # * @param array $attributes # * @param array $values # * @return TModel' - name: firstOrCreate visibility: public parameters: - name: attributes default: '[]' - name: values default: '[]' comment: '# * Get the first record matching the attributes. If the record is not found, create it. # * # * @param array $attributes # * @param array $values # * @return TModel' - name: createOrFirst visibility: public parameters: - name: attributes default: '[]' - name: values default: '[]' comment: '# * Attempt to create the record. If a unique constraint violation occurs, attempt to find the matching record. # * # * @param array $attributes # * @param array $values # * @return TModel' - name: updateOrCreate visibility: public parameters: - name: attributes - name: values default: '[]' comment: '# * Create or update a record matching the attributes, and fill it with values. # * # * @param array $attributes # * @param array $values # * @return TModel' - name: firstOrFail visibility: public parameters: - name: columns default: '[''*'']' comment: '# * Execute the query and get the first result or throw an exception. # * # * @param array|string $columns # * @return TModel # * # * @throws \Illuminate\Database\Eloquent\ModelNotFoundException' - name: firstOr visibility: public parameters: - name: columns default: '[''*'']' - name: callback default: 'null' comment: '# * Execute the query and get the first result or call a callback. # * # * @template TValue # * # * @param (\Closure(): TValue)|list $columns # * @param (\Closure(): TValue)|null $callback # * @return TModel|TValue' - name: sole visibility: public parameters: - name: columns default: '[''*'']' comment: '# * Execute the query and get the first result if it''s the sole matching record. # * # * @param array|string $columns # * @return TModel # * # * @throws \Illuminate\Database\Eloquent\ModelNotFoundException # * @throws \Illuminate\Database\MultipleRecordsFoundException' - name: value visibility: public parameters: - name: column comment: '# * Get a single column''s value from the first result of a query. # * # * @param string|\Illuminate\Contracts\Database\Query\Expression $column # * @return mixed' - name: soleValue visibility: public parameters: - name: column comment: '# * Get a single column''s value from the first result of a query if it''s the sole matching record. # * # * @param string|\Illuminate\Contracts\Database\Query\Expression $column # * @return mixed # * # * @throws \Illuminate\Database\Eloquent\ModelNotFoundException # * @throws \Illuminate\Database\MultipleRecordsFoundException' - name: valueOrFail visibility: public parameters: - name: column comment: '# * Get a single column''s value from the first result of the query or throw an exception. # * # * @param string|\Illuminate\Contracts\Database\Query\Expression $column # * @return mixed # * # * @throws \Illuminate\Database\Eloquent\ModelNotFoundException' - name: get visibility: public parameters: - name: columns default: '[''*'']' comment: '# * Execute the query as a "select" statement. # * # * @param array|string $columns # * @return \Illuminate\Database\Eloquent\Collection' - name: getModels visibility: public parameters: - name: columns default: '[''*'']' comment: '# * Get the hydrated models without eager loading. # * # * @param array|string $columns # * @return array' - name: eagerLoadRelations visibility: public parameters: - name: models comment: '# * Eager load the relationships for the models. # * # * @param array $models # * @return array' - name: eagerLoadRelation visibility: protected parameters: - name: models - name: name - name: constraints comment: '# * Eagerly load the relationship on a set of models. # * # * @param array $models # * @param string $name # * @param \Closure $constraints # * @return array' - name: getRelation visibility: public parameters: - name: name comment: '# * Get the relation instance for the given relation name. # * # * @param string $name # * @return \Illuminate\Database\Eloquent\Relations\Relation<\Illuminate\Database\Eloquent\Model, TModel, *>' - name: relationsNestedUnder visibility: protected parameters: - name: relation comment: '# * Get the deeply nested relations for a given top-level relation. # * # * @param string $relation # * @return array' - name: isNestedUnder visibility: protected parameters: - name: relation - name: name comment: '# * Determine if the relationship is nested. # * # * @param string $relation # * @param string $name # * @return bool' - name: afterQuery visibility: public parameters: - name: callback comment: '# * Register a closure to be invoked after the query is executed. # * # * @param \Closure $callback # * @return $this' - name: applyAfterQueryCallbacks visibility: public parameters: - name: result comment: '# * Invoke the "after query" modification callbacks. # * # * @param mixed $result # * @return mixed' - name: cursor visibility: public parameters: [] comment: '# * Get a lazy collection for the given query. # * # * @return \Illuminate\Support\LazyCollection' - name: enforceOrderBy visibility: protected parameters: [] comment: '# * Add a generic "order by" clause if the query doesn''t already have one. # * # * @return void' - name: pluck visibility: public parameters: - name: column - name: key default: 'null' comment: '# * Get a collection with the values of a given column. # * # * @param string|\Illuminate\Contracts\Database\Query\Expression $column # * @param string|null $key # * @return \Illuminate\Support\Collection' - name: paginate visibility: public parameters: - name: perPage default: 'null' - name: columns default: '[''*'']' - name: pageName default: '''page''' - name: page default: 'null' - name: total default: 'null' comment: '# * Paginate the given query. # * # * @param int|null|\Closure $perPage # * @param array|string $columns # * @param string $pageName # * @param int|null $page # * @param \Closure|int|null $total # * @return \Illuminate\Contracts\Pagination\LengthAwarePaginator # * # * @throws \InvalidArgumentException' - name: simplePaginate visibility: public parameters: - name: perPage default: 'null' - name: columns default: '[''*'']' - name: pageName default: '''page''' - name: page default: 'null' comment: '# * Paginate the given query into a simple paginator. # * # * @param int|null $perPage # * @param array|string $columns # * @param string $pageName # * @param int|null $page # * @return \Illuminate\Contracts\Pagination\Paginator' - name: cursorPaginate visibility: public parameters: - name: perPage default: 'null' - name: columns default: '[''*'']' - name: cursorName default: '''cursor''' - name: cursor default: 'null' comment: '# * Paginate the given query into a cursor paginator. # * # * @param int|null $perPage # * @param array|string $columns # * @param string $cursorName # * @param \Illuminate\Pagination\Cursor|string|null $cursor # * @return \Illuminate\Contracts\Pagination\CursorPaginator' - name: ensureOrderForCursorPagination visibility: protected parameters: - name: shouldReverse default: 'false' comment: '# * Ensure the proper order by required for cursor pagination. # * # * @param bool $shouldReverse # * @return \Illuminate\Support\Collection' - name: create visibility: public parameters: - name: attributes default: '[]' comment: '# * Save a new model and return the instance. # * # * @param array $attributes # * @return TModel' - name: forceCreate visibility: public parameters: - name: attributes comment: '# * Save a new model and return the instance. Allow mass-assignment. # * # * @param array $attributes # * @return TModel' - name: forceCreateQuietly visibility: public parameters: - name: attributes default: '[]' comment: '# * Save a new model instance with mass assignment without raising model events. # * # * @param array $attributes # * @return TModel' - name: update visibility: public parameters: - name: values comment: '# * Update records in the database. # * # * @param array $values # * @return int' - name: upsert visibility: public parameters: - name: values - name: uniqueBy - name: update default: 'null' comment: '# * Insert new records or update the existing ones. # * # * @param array $values # * @param array|string $uniqueBy # * @param array|null $update # * @return int' - name: touch visibility: public parameters: - name: column default: 'null' comment: '# * Update the column''s update timestamp. # * # * @param string|null $column # * @return int|false' - name: increment visibility: public parameters: - name: column - name: amount default: '1' - name: extra default: '[]' comment: '# * Increment a column''s value by a given amount. # * # * @param string|\Illuminate\Contracts\Database\Query\Expression $column # * @param float|int $amount # * @param array $extra # * @return int' - name: decrement visibility: public parameters: - name: column - name: amount default: '1' - name: extra default: '[]' comment: '# * Decrement a column''s value by a given amount. # * # * @param string|\Illuminate\Contracts\Database\Query\Expression $column # * @param float|int $amount # * @param array $extra # * @return int' - name: addUpdatedAtColumn visibility: protected parameters: - name: values comment: '# * Add the "updated at" column to an array of values. # * # * @param array $values # * @return array' - name: addUniqueIdsToUpsertValues visibility: protected parameters: - name: values comment: '# * Add unique IDs to the inserted values. # * # * @param array $values # * @return array' - name: addTimestampsToUpsertValues visibility: protected parameters: - name: values comment: '# * Add timestamps to the inserted values. # * # * @param array $values # * @return array' - name: addUpdatedAtToUpsertColumns visibility: protected parameters: - name: update comment: '# * Add the "updated at" column to the updated columns. # * # * @param array $update # * @return array' - name: delete visibility: public parameters: [] comment: '# * Delete records from the database. # * # * @return mixed' - name: forceDelete visibility: public parameters: [] comment: '# * Run the default delete function on the builder. # * # * Since we do not apply scopes here, the row will actually be deleted. # * # * @return mixed' - name: onDelete visibility: public parameters: - name: callback comment: '# * Register a replacement for the default delete function. # * # * @param \Closure $callback # * @return void' - name: hasNamedScope visibility: public parameters: - name: scope comment: '# * Determine if the given model has a scope. # * # * @param string $scope # * @return bool' - name: scopes visibility: public parameters: - name: scopes comment: '# * Call the given local model scopes. # * # * @param array|string $scopes # * @return static|mixed' - name: applyScopes visibility: public parameters: [] comment: '# * Apply the scopes to the Eloquent builder instance and return it. # * # * @return static' - name: callScope visibility: protected parameters: - name: scope - name: parameters default: '[]' comment: '# * Apply the given scope on the current builder instance. # * # * @param callable $scope # * @param array $parameters # * @return mixed' - name: callNamedScope visibility: protected parameters: - name: scope - name: parameters default: '[]' comment: '# * Apply the given named scope on the current builder instance. # * # * @param string $scope # * @param array $parameters # * @return mixed' - name: addNewWheresWithinGroup visibility: protected parameters: - name: query - name: originalWhereCount comment: '# * Nest where conditions by slicing them at the given where count. # * # * @param \Illuminate\Database\Query\Builder $query # * @param int $originalWhereCount # * @return void' - name: groupWhereSliceForScope visibility: protected parameters: - name: query - name: whereSlice comment: '# * Slice where conditions at the given offset and add them to the query as a nested condition. # * # * @param \Illuminate\Database\Query\Builder $query # * @param array $whereSlice # * @return void' - name: createNestedWhere visibility: protected parameters: - name: whereSlice - name: boolean default: '''and''' comment: '# * Create a where array with nested where conditions. # * # * @param array $whereSlice # * @param string $boolean # * @return array' - name: with visibility: public parameters: - name: relations - name: callback default: 'null' comment: '# * Set the relationships that should be eager loaded. # * # * @param string|array $relations # * @param string|\Closure|null $callback # * @return $this' - name: without visibility: public parameters: - name: relations comment: '# * Prevent the specified relations from being eager loaded. # * # * @param mixed $relations # * @return $this' - name: withOnly visibility: public parameters: - name: relations comment: '# * Set the relationships that should be eager loaded while removing any previously added eager loading specifications. # * # * @param mixed $relations # * @return $this' - name: newModelInstance visibility: public parameters: - name: attributes default: '[]' comment: '# * Create a new instance of the model being queried. # * # * @param array $attributes # * @return TModel' - name: parseWithRelations visibility: protected parameters: - name: relations comment: '# * Parse a list of relations into individuals. # * # * @param array $relations # * @return array' - name: prepareNestedWithRelationships visibility: protected parameters: - name: relations - name: prefix default: '''''' comment: '# * Prepare nested with relationships. # * # * @param array $relations # * @param string $prefix # * @return array' - name: combineConstraints visibility: protected parameters: - name: constraints comment: '# * Combine an array of constraints into a single constraint. # * # * @param array $constraints # * @return \Closure' - name: parseNameAndAttributeSelectionConstraint visibility: protected parameters: - name: name comment: '# * Parse the attribute select constraints from the name. # * # * @param string $name # * @return array' - name: createSelectWithConstraint visibility: protected parameters: - name: name comment: '# * Create a constraint to select the given columns for the relation. # * # * @param string $name # * @return array' - name: addNestedWiths visibility: protected parameters: - name: name - name: results comment: '# * Parse the nested relationships in a relation. # * # * @param string $name # * @param array $results # * @return array' - name: withCasts visibility: public parameters: - name: casts comment: '# * Apply query-time casts to the model instance. # * # * @param array $casts # * @return $this' - name: withSavepointIfNeeded visibility: public parameters: - name: scope comment: '# * Execute the given Closure within a transaction savepoint if needed. # * # * @template TModelValue # * # * @param \Closure(): TModelValue $scope # * @return TModelValue' - name: getUnionBuilders visibility: protected parameters: [] comment: '# * Get the Eloquent builder instances that are used in the union of the query. # * # * @return \Illuminate\Support\Collection' - name: getQuery visibility: public parameters: [] comment: '# * Get the underlying query builder instance. # * # * @return \Illuminate\Database\Query\Builder' - name: setQuery visibility: public parameters: - name: query comment: '# * Set the underlying query builder instance. # * # * @param \Illuminate\Database\Query\Builder $query # * @return $this' - name: toBase visibility: public parameters: [] comment: '# * Get a base query builder instance. # * # * @return \Illuminate\Database\Query\Builder' - name: getEagerLoads visibility: public parameters: [] comment: '# * Get the relationships being eagerly loaded. # * # * @return array' - name: setEagerLoads visibility: public parameters: - name: eagerLoad comment: '# * Set the relationships being eagerly loaded. # * # * @param array $eagerLoad # * @return $this' - name: withoutEagerLoad visibility: public parameters: - name: relations comment: '# * Indicate that the given relationships should not be eagerly loaded. # * # * @param array $relations # * @return $this' - name: withoutEagerLoads visibility: public parameters: [] comment: '# * Flush the relationships being eagerly loaded. # * # * @return $this' - name: defaultKeyName visibility: protected parameters: [] comment: '# * Get the default key name of the table. # * # * @return string' - name: getModel visibility: public parameters: [] comment: '# * Get the model instance being queried. # * # * @return TModel' - name: setModel visibility: public parameters: - name: model comment: '# * Set a model instance for the model being queried. # * # * @template TModelNew of \Illuminate\Database\Eloquent\Model # * # * @param TModelNew $model # * @return static' - name: qualifyColumn visibility: public parameters: - name: column comment: '# * Qualify the given column name by the model''s table. # * # * @param string|\Illuminate\Contracts\Database\Query\Expression $column # * @return string' - name: qualifyColumns visibility: public parameters: - name: columns comment: '# * Qualify the given columns with the model''s table. # * # * @param array|\Illuminate\Contracts\Database\Query\Expression $columns # * @return array' - name: getMacro visibility: public parameters: - name: name comment: '# * Get the given macro by name. # * # * @param string $name # * @return \Closure' - name: hasMacro visibility: public parameters: - name: name comment: '# * Checks if a macro is registered. # * # * @param string $name # * @return bool' - name: getGlobalMacro visibility: public parameters: - name: name comment: '# * Get the given global macro by name. # * # * @param string $name # * @return \Closure' - name: hasGlobalMacro visibility: public parameters: - name: name comment: '# * Checks if a global macro is registered. # * # * @param string $name # * @return bool' - name: __get visibility: public parameters: - name: key comment: '# * Dynamically access builder proxies. # * # * @param string $key # * @return mixed # * # * @throws \Exception' - name: __call visibility: public parameters: - name: method - name: parameters comment: '# * Dynamically handle calls into the query instance. # * # * @param string $method # * @param array $parameters # * @return mixed' - name: __callStatic visibility: public parameters: - name: method - name: parameters comment: '# * Dynamically handle calls into the query instance. # * # * @param string $method # * @param array $parameters # * @return mixed # * # * @throws \BadMethodCallException' - name: registerMixin visibility: protected parameters: - name: mixin - name: replace comment: '# * Register the given mixin with the builder. # * # * @param string $mixin # * @param bool $replace # * @return void' - name: clone visibility: public parameters: [] comment: '# * Clone the Eloquent query builder. # * # * @return static' - name: __clone visibility: public parameters: [] comment: '# * Force a clone of the underlying query builder when cloning. # * # * @return void' traits: - BadMethodCallException - Closure - Exception - Illuminate\Contracts\Database\Query\Expression - Illuminate\Contracts\Support\Arrayable - Illuminate\Database\Concerns\BuildsQueries - Illuminate\Database\Eloquent\Concerns\QueriesRelationships - Illuminate\Database\Eloquent\Relations\BelongsToMany - Illuminate\Database\Eloquent\Relations\Relation - Illuminate\Database\RecordsNotFoundException - Illuminate\Database\UniqueConstraintViolationException - Illuminate\Pagination\Paginator - Illuminate\Support\Arr - Illuminate\Support\Str - Illuminate\Support\Traits\ForwardsCalls - ReflectionClass - ReflectionMethod interfaces: - BuilderContract