DiscordPHP Documentation

CommandPermissionsRepository extends AbstractRepository
in package

Contains permission overwrites for application guild commands.

Tags
see
CommandPermissions
see
Command
see
Permission
since
10.0.0

Refactored from OverwriteRepository to CommandPermissionsRepository

since
7.0.0

Table of Contents

Properties

$cache  : CacheWrapper
$discrim  : string
The collection discriminator.
$cache  : CacheWrapper
$class  : string
Class type allowed into the collection.
$discrim  : string
The collection discriminator.
$endpoints  : mixed
{@inheritDoc}
$factory  : Factory
The parts factory.
$http  : Http
The HTTP client.
$items  : array<string|int, mixed>
The items contained in the collection.
$vars  : array<string|int, mixed>
Variables that are related to the repository.

Methods

__call()  : mixed
This method checks if a method with the name "__Collection__{$name}" exists within the class. If it does, it calls that method with the provided arguments.
__construct()  : mixed
__debugInfo()  : array<string|int, mixed>
Returns an item that will be displayed for debugging.
__get()  : mixed
__serialize()  : array<string|int, mixed>
Returns the string representation of the collection.
__unserialize()  : void
Unserializes the collection.
all()  : bool
Checks if all items match the callback.
any()  : bool
Checks if any item matches the callback.
clear()  : void
Clears the repository.
collect()  : ExCollectionInterface
Converts the items into a new collection.
count()  : int
Counts the amount of objects in the collection.
create()  : Part
Builds a new, empty part.
delete()  : PromiseInterface<string|int, Part>
Attempts to delete a part on the Discord servers.
diff()  : ExCollectionInterface
Gets the difference between the items.
fetch()  : PromiseInterface<string|int, Part>
Gets a part from the repository or Discord servers.
fill()  : self
Fills an array of items into the collection.
filter()  : ExCollectionInterface
Runs a filter callback over the repository and returns a new collection based on the response of the callback.
find()  : Part|null
Runs a filter callback over the repository and returns the first part where the callback returns `true` when given the part.
find()  : CommandPermissions|null
find_key()  : mixed
Finds the key of the first item that matches the callback.
first()  : Part|null
Returns the first cached part.
first()  : CommandPermissions|null
for()  : ExCollectionInterface
Creates a collection for a class.
fresh()  : PromiseInterface<string|int, Part>
Returns a part with fresh values.
freshen()  : PromiseInterface<string|int, static>
Freshens the repository cache.
from()  : ExCollectionInterface
Creates a collection from an array.
get()  : Part|null
Gets a part from the repository.
get()  : CommandPermissions|null
getIterator()  : Traversable
Returns an iterator for the cache.
has()  : bool
Checks if the array has an object.
intersect()  : ExCollectionInterface
Gets the intersection of the items.
isset()  : bool
If the collection has an offset.
jsonSerialize()  : array<string|int, mixed>
{@inheritDoc}
keys()  : array<string|int, int>|array<string|int, string>
Get the keys of the items.
last()  : Part|null
Returns the last cached part.
last()  : CommandPermissions|null
map()  : ExCollectionInterface
Runs a callback over the collection and creates a new Collection.
merge()  : self
Merges another collection into this collection.
offsetExists()  : bool
If the repository has an offset.
offsetGet()  : Part|null
Gets a part from the repository.
offsetSet()  : void
Sets a part into the repository.
offsetUnset()  : void
Unsets an index from the repository.
pull()  : Part|mixed
Pulls a part from the repository.
pull()  : CommandPermissions|null
push()  : self
Pushes items to the collection.
pushItem()  : self
Pushes a single item to the repository.
reduce()  : ExCollectionInterface
Reduces the collection to a single value using a callback function.
save()  : PromiseInterface<string|int, Part>
Attempts to save a part to the Discord servers.
search()  : string|int|false
Searches for a given value within the collection and returns the corresponding key if successful.
serialize()  : string
Returns the string representation of the collection.
set()  : mixed
Sets a part in the repository.
shift()  : mixed
Shifts an item from the collection.
slice()  : ExCollectionInterface
Slices the collection.
sort()  : ExCollectionInterface
Sort through each item with a callback.
splice()  : self
Splices the collection, removing a portion of the items and replacing them with the given replacement.
toArray()  : array<string|int, mixed>
Converts the weak caches to array.
unique()  : ExCollectionInterface
Returns unique items.
unserialize()  : void
Unserializes the collection.
values()  : array<string|int, mixed>
Get the values of the items.
walk()  : ExCollectionInterface
Applies the given callback function to each item in the collection.
cacheFreshen()  : PromiseInterface<string|int, static>

Properties

$discrim

The collection discriminator.

protected string $discrim = 'id'

Discriminator.

$endpoints

{@inheritDoc}

protected mixed $endpoints = ['all' => \Discord\Http\Endpoint::GUILD_APPLICATION_COMMANDS_PERMISSIONS, 'get' => \Discord\Http\Endpoint::GUILD_APPLICATION_COMMAND_PERMISSIONS]

$items

The items contained in the collection.

protected array<string|int, mixed> $items = []

$vars

Variables that are related to the repository.

protected array<string|int, mixed> $vars = []

Variables.

Methods

__call()

This method checks if a method with the name "__Collection__{$name}" exists within the class. If it does, it calls that method with the provided arguments.

public __call(string $name, array<string|int, mixed> $arguments) : mixed

If the method does not exist, it throws a BadMethodCallException.

Previously, this class utilized parent::method to call methods from the parent class. This was changed to use the __Collection__method naming convention to avoid conflicts

Parameters
$name : string

The name of the method being called.

$arguments : array<string|int, mixed>

The arguments passed to the method.

Tags
throws
BadMethodCallException

If the method does not exist.

Return values
mixed

The result of the called method.

__debugInfo()

Returns an item that will be displayed for debugging.

public __debugInfo() : array<string|int, mixed>
Return values
array<string|int, mixed>

__serialize()

Returns the string representation of the collection.

public __serialize() : array<string|int, mixed>
Return values
array<string|int, mixed>

all()

Checks if all items match the callback.

public all(callable $callback) : bool
Parameters
$callback : callable
Return values
bool

any()

Checks if any item matches the callback.

public any(callable $callback) : bool
Parameters
$callback : callable
Return values
bool

count()

Counts the amount of objects in the collection.

public count() : int
Return values
int

create()

Builds a new, empty part.

public create([array<string|int, mixed>|object $attributes = [] ][, bool $created = false ]) : Part
Parameters
$attributes : array<string|int, mixed>|object = []

The attributes for the new part.

$created : bool = false
Tags
throws
Exception
Return values
Part

The new part.

delete()

Attempts to delete a part on the Discord servers.

public delete(Part|string $part[, string|null $reason = null ]) : PromiseInterface<string|int, Part>
Parameters
$part : Part|string

The part to delete.

$reason : string|null = null

Reason for Audit Log (if supported).

Tags
throws
Exception
Return values
PromiseInterface<string|int, Part>

diff()

Gets the difference between the items.

public diff(mixed $items[, callable|null $callback = null ]) : ExCollectionInterface

If a callback is provided and is callable, it uses array_udiff_assoc to compute the difference. Otherwise, it uses array_diff.

Parameters
$items : mixed
$callback : callable|null = null
Return values
ExCollectionInterface

fetch()

Gets a part from the repository or Discord servers.

public fetch(string $id[, bool $fresh = false ]) : PromiseInterface<string|int, Part>
Parameters
$id : string

The ID to search for.

$fresh : bool = false

Whether we should skip checking the cache.

Tags
throws
Exception
Return values
PromiseInterface<string|int, Part>

filter()

Runs a filter callback over the repository and returns a new collection based on the response of the callback.

public filter(callable $callback) : ExCollectionInterface
Parameters
$callback : callable
Tags
todo

This method will be typed to return an ExCollectionInterface in v11

Return values
ExCollectionInterface

find()

Runs a filter callback over the repository and returns the first part where the callback returns `true` when given the part.

public find(callable $callback) : Part|null
Parameters
$callback : callable
Return values
Part|null

null if no items returns true when called in the callback.

find_key()

Finds the key of the first item that matches the callback.

public find_key(callable $callback) : mixed
Parameters
$callback : callable

fresh()

Returns a part with fresh values.

public fresh(Part $part[, array<string|int, mixed> $queryparams = [] ]) : PromiseInterface<string|int, Part>
Parameters
$part : Part

The part to get fresh values.

$queryparams : array<string|int, mixed> = []

Query string params to add to the request (no validation)

Tags
throws
Exception
Return values
PromiseInterface<string|int, Part>

freshen()

Freshens the repository cache.

public freshen([array<string|int, mixed> $queryparams = [] ]) : PromiseInterface<string|int, static>
Parameters
$queryparams : array<string|int, mixed> = []

Query string params to add to the request (no validation)

Tags
throws
Exception
Return values
PromiseInterface<string|int, static>

from()

Creates a collection from an array.

public static from([array<string|int, mixed> $items = [] ][, string|null $discrim = 'id' ][, string|null $class = null ]) : ExCollectionInterface
Parameters
$items : array<string|int, mixed> = []
$discrim : string|null = 'id'
$class : string|null = null
Return values
ExCollectionInterface

get()

Gets a part from the repository.

public get(string $discrim, mixed $key) : Part|null
Parameters
$discrim : string
$key : mixed
Return values
Part|null

getIterator()

Returns an iterator for the cache.

public & getIterator() : Traversable
Return values
Traversable

has()

Checks if the array has an object.

public has(string|int ...$keys) : bool

Use async $repository->cache->has()

Parameters
$keys : string|int
Return values
bool

intersect()

Gets the intersection of the items.

public intersect(mixed $items[, callable|null $callback = null ]) : ExCollectionInterface

If a callback is provided and is callable, it uses array_uintersect_assoc to compute the intersection. Otherwise, it uses array_intersect.

Parameters
$items : mixed
$callback : callable|null = null
Return values
ExCollectionInterface

isset()

If the collection has an offset.

public isset(mixed $offset) : bool
Parameters
$offset : mixed
Return values
bool

jsonSerialize()

{@inheritDoc}

public jsonSerialize() : array<string|int, mixed>
Return values
array<string|int, mixed>

keys()

Get the keys of the items.

public keys() : array<string|int, int>|array<string|int, string>
Return values
array<string|int, int>|array<string|int, string>

merge()

Merges another collection into this collection.

public merge(mixed $collection) : self
Parameters
$collection : mixed
Return values
self

offsetExists()

If the repository has an offset.

public offsetExists(string|int $offset) : bool

Use async $repository->cache->has() This method is deprecated for userland code but can still be used internally within the library.

Parameters
$offset : string|int
Return values
bool

offsetGet()

Gets a part from the repository.

public offsetGet(string|int $offset) : Part|null

Use async $repository->cacheGet() or sync $repository->get() This method is deprecated for userland code but can still be used internally within the library.

Parameters
$offset : string|int
Return values
Part|null

offsetSet()

Sets a part into the repository.

public offsetSet(string|int $offset, Part|null $value) : void

Use async $repository->cache->set()

Parameters
$offset : string|int
$value : Part|null

offsetUnset()

Unsets an index from the repository.

public offsetUnset(string|int $offset) : void

Use async $repository->cache->delete()

Parameters
$offset : string|int

pull()

Pulls a part from the repository.

public pull(string|int $key[, mixed $default = null ]) : Part|mixed

Use async $repository->cachePull()

Parameters
$key : string|int
$default : mixed = null
Return values
Part|mixed

push()

Pushes items to the collection.

public push(mixed ...$items) : self
Parameters
$items : mixed
Return values
self

pushItem()

Pushes a single item to the repository.

public pushItem(Part $item) : self

Use async $repository->cache->set() This method is deprecated for userland code but can still be used internally within the library.

Parameters
$item : Part
Return values
self

save()

Attempts to save a part to the Discord servers.

public save(Part $part[, string|null $reason = null ]) : PromiseInterface<string|int, Part>
Parameters
$part : Part

The part to save.

$reason : string|null = null

Reason for Audit Log (if supported).

Tags
throws
Exception
Return values
PromiseInterface<string|int, Part>

Searches for a given value within the collection and returns the corresponding key if successful.

public search(mixed $needle[, bool $strict = false ]) : string|int|false
Parameters
$needle : mixed
$strict : bool = false

[optional]

Return values
string|int|false

serialize()

Returns the string representation of the collection.

public serialize([int $flags = 0 ][, int|null $depth = 512 ]) : string
Parameters
$flags : int = 0
$depth : int|null = 512
Return values
string

splice()

Splices the collection, removing a portion of the items and replacing them with the given replacement.

public splice(int $offset, int|null $length[, mixed $replacement = [] ]) : self
Parameters
$offset : int
$length : int|null
$replacement : mixed = []
Return values
self

toArray()

Converts the weak caches to array.

public toArray() : array<string|int, mixed>
Return values
array<string|int, mixed>

unserialize()

Unserializes the collection.

public unserialize(string $serialized) : void
Parameters
$serialized : string

values()

Get the values of the items.

public values() : array<string|int, mixed>
Return values
array<string|int, mixed>

cacheFreshen()

protected cacheFreshen(object $response) : PromiseInterface<string|int, static>
Parameters
$response : object
Return values
PromiseInterface<string|int, static>

        
On this page

Search results