Browse Source

Add PreconditionAttribute docs

pull/988/head
Hsu Still 7 years ago
parent
commit
27e6e2bdbf
No known key found for this signature in database GPG Key ID: 8601A145FDA95209
3 changed files with 60 additions and 0 deletions
  1. +30
    -0
      docs/_overwrites/Commands/PreconditionAttribute.Overwrites.md
  2. +6
    -0
      docs/_overwrites/Commands/PreconditionAttribute.Remarks.Inclusion.md
  3. +24
    -0
      docs/_overwrites/Common/OverrideTypeReaderAttribute.Overwrites.md

+ 30
- 0
docs/_overwrites/Commands/PreconditionAttribute.Overwrites.md View File

@@ -0,0 +1,30 @@
---
uid: Discord.Commands.PreconditionAttribute
seealso:
- linkId: Discord.Commands.ParameterPreconditionAttribute
remarks: *content
---

This precondition attribute can be applied on module-level or
method-level for a command.

[!include[Remarks(PreconditionAttribute.Remarks.Inclusion.md)]]

---
uid: Discord.Commands.ParameterPreconditionAttribute
seealso:
- linkId: Discord.Commands.PreconditionAttribute
remarks: *content
---

This precondition attribute can be applied on parameter-level for a
command.

[!include[Remarks(PreconditionAttribute.Remarks.Inclusion.md)]]

---
uid: Discord.Commands.PreconditionAttribute
example: [*content]
---

// todo: add example

+ 6
- 0
docs/_overwrites/Commands/PreconditionAttribute.Remarks.Inclusion.md View File

@@ -0,0 +1,6 @@
A "precondidtion" in the command system is used to determine if a
condition is met before entering the command task. Using a
precondidtion may aid in keeping a well-organized command logic.

The most common use case being whether a user has sufficient
permission to execute the command.

+ 24
- 0
docs/_overwrites/Common/OverrideTypeReaderAttribute.Overwrites.md View File

@@ -0,0 +1,24 @@
---
uid: Discord.Commands.OverrideTypeReaderAttribute
remarks: *content
---

This attribute is used to override a command parameter's type reading
behaviour. This may be useful when you have multiple custom
@Discord.Commands.TypeReader and would like to specify one.

---
uid: Discord.Commands.OverrideTypeReaderAttribute
examples: [*content]
---

The following example will override the @Discord.Commands.TypeReader
of @Discord.IUser to `MyUserTypeReader`.

```cs
public async Task PrintUserAsync(
[OverrideTypeReader(typeof(MyUserTypeReader))] IUser user)
{
//...
}
```

Loading…
Cancel
Save