* Fix ' />' caused by Agent Smith oddities * Fix styling to be more specific about the mention of IDspull/1161/head
@@ -5,7 +5,7 @@ using System.Reflection; | |||||
namespace Discord.Commands | namespace Discord.Commands | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// Marks the <see cref="Type"/> to be read by the specified <see cref="TypeReader" />. | |||||
/// Marks the <see cref="Type"/> to be read by the specified <see cref="TypeReader"/>. | |||||
/// </summary> | /// </summary> | ||||
[AttributeUsage(AttributeTargets.Parameter, AllowMultiple = false, Inherited = true)] | [AttributeUsage(AttributeTargets.Parameter, AllowMultiple = false, Inherited = true)] | ||||
public class OverrideTypeReaderAttribute : Attribute | public class OverrideTypeReaderAttribute : Attribute | ||||
@@ -19,7 +19,7 @@ namespace Discord.Commands | |||||
public ChannelPermission? ChannelPermission { get; } | public ChannelPermission? ChannelPermission { get; } | ||||
/// <summary> | /// <summary> | ||||
/// Requires the bot account to have a specific <see cref="Discord.GuildPermission" />. | |||||
/// Requires the bot account to have a specific <see cref="Discord.GuildPermission"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <remarks> | /// <remarks> | ||||
/// This precondition will always fail if the command is being invoked in a <see cref="IPrivateChannel"/>. | /// This precondition will always fail if the command is being invoked in a <see cref="IPrivateChannel"/>. | ||||
@@ -19,7 +19,7 @@ namespace Discord.Commands | |||||
public ChannelPermission? ChannelPermission { get; } | public ChannelPermission? ChannelPermission { get; } | ||||
/// <summary> | /// <summary> | ||||
/// Requires that the user invoking the command to have a specific <see cref="Discord.GuildPermission" />. | |||||
/// Requires that the user invoking the command to have a specific <see cref="Discord.GuildPermission"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <remarks> | /// <remarks> | ||||
/// This precondition will always fail if the command is being invoked in a <see cref="IPrivateChannel"/>. | /// This precondition will always fail if the command is being invoked in a <see cref="IPrivateChannel"/>. | ||||
@@ -41,17 +41,17 @@ namespace Discord.Commands | |||||
internal readonly IReadOnlyDictionary<char, char> _quotationMarkAliasMap; | internal readonly IReadOnlyDictionary<char, char> _quotationMarkAliasMap; | ||||
/// <summary> | /// <summary> | ||||
/// Represents all modules loaded within <see cref="CommandService" />. | |||||
/// Represents all modules loaded within <see cref="CommandService"/>. | |||||
/// </summary> | /// </summary> | ||||
public IEnumerable<ModuleInfo> Modules => _moduleDefs.Select(x => x); | public IEnumerable<ModuleInfo> Modules => _moduleDefs.Select(x => x); | ||||
/// <summary> | /// <summary> | ||||
/// Represents all commands loaded within <see cref="CommandService" />. | |||||
/// Represents all commands loaded within <see cref="CommandService"/>. | |||||
/// </summary> | /// </summary> | ||||
public IEnumerable<CommandInfo> Commands => _moduleDefs.SelectMany(x => x.Commands); | public IEnumerable<CommandInfo> Commands => _moduleDefs.SelectMany(x => x.Commands); | ||||
/// <summary> | /// <summary> | ||||
/// Represents all <see cref="TypeReader" /> loaded within <see cref="CommandService" />. | |||||
/// Represents all <see cref="TypeReader" /> loaded within <see cref="CommandService"/>. | |||||
/// </summary> | /// </summary> | ||||
public ILookup<Type, TypeReader> TypeReaders => _typeReaders.SelectMany(x => x.Value.Select(y => new { y.Key, y.Value })).ToLookup(x => x.Key, x => x.Value); | public ILookup<Type, TypeReader> TypeReaders => _typeReaders.SelectMany(x => x.Value.Select(y => new { y.Key, y.Value })).ToLookup(x => x.Key, x => x.Value); | ||||
@@ -130,30 +130,30 @@ namespace Discord.Commands | |||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// Add a command module from a <see cref="Type" />. | |||||
/// Add a command module from a <see cref="Type"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <typeparam name="T">The type of module.</typeparam> | /// <typeparam name="T">The type of module.</typeparam> | ||||
/// <param name="services"> | /// <param name="services"> | ||||
/// The <see cref="IServiceProvider" /> for your dependency injection solution, if using one - otherwise, pass | |||||
/// The <see cref="IServiceProvider"/> for your dependency injection solution if using one; otherwise, pass | |||||
/// <c>null</c>. | /// <c>null</c>. | ||||
/// </param> | /// </param> | ||||
/// <returns> | /// <returns> | ||||
/// A built module. | |||||
/// An awaitable <see cref="Task"/> containing the built module. | |||||
/// </returns> | /// </returns> | ||||
/// <exception cref="ArgumentException">This module has already been added.</exception> | /// <exception cref="ArgumentException">This module has already been added.</exception> | ||||
/// <exception cref="InvalidOperationException">The <see cref="ModuleInfo"/> fails to be built; an invalid type may have been provided.</exception> | /// <exception cref="InvalidOperationException">The <see cref="ModuleInfo"/> fails to be built; an invalid type may have been provided.</exception> | ||||
public Task<ModuleInfo> AddModuleAsync<T>(IServiceProvider services) => AddModuleAsync(typeof(T), services); | public Task<ModuleInfo> AddModuleAsync<T>(IServiceProvider services) => AddModuleAsync(typeof(T), services); | ||||
/// <summary> | /// <summary> | ||||
/// Adds a command module from a <see cref="Type" />. | |||||
/// Adds a command module from a <see cref="Type"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="type">The type of module.</param> | /// <param name="type">The type of module.</param> | ||||
/// <param name="services"> | /// <param name="services"> | ||||
/// The <see cref="IServiceProvider" /> for your dependency injection solution, if using one - otherwise, pass | |||||
/// The <see cref="IServiceProvider"/> for your dependency injection solution if using one; otherwise, pass | |||||
/// <c>null</c>. | /// <c>null</c>. | ||||
/// </param> | /// </param> | ||||
/// <returns> | /// <returns> | ||||
/// A built module. | |||||
/// An awaitable <see cref="Task"/> containing the built module. | |||||
/// </returns> | /// </returns> | ||||
/// <exception cref="ArgumentException">This module has already been added.</exception> | /// <exception cref="ArgumentException">This module has already been added.</exception> | ||||
/// <exception cref="InvalidOperationException">The <see cref="ModuleInfo"/> fails to be built; an invalid type may have been provided.</exception> | /// <exception cref="InvalidOperationException">The <see cref="ModuleInfo"/> fails to be built; an invalid type may have been provided.</exception> | ||||
@@ -184,15 +184,15 @@ namespace Discord.Commands | |||||
} | } | ||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// Add command modules from an <see cref="Assembly" />. | |||||
/// Add command modules from an <see cref="Assembly"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="assembly">The <see cref="Assembly" /> containing command modules.</param> | /// <param name="assembly">The <see cref="Assembly" /> containing command modules.</param> | ||||
/// <param name="services"> | /// <param name="services"> | ||||
/// An <see cref="IServiceProvider" /> for your dependency injection solution, if using one - otherwise, pass | |||||
/// The <see cref="IServiceProvider"/> for your dependency injection solution if using one; otherwise, pass | |||||
/// <c>null</c>. | /// <c>null</c>. | ||||
/// </param> | /// </param> | ||||
/// <returns> | /// <returns> | ||||
/// A collection of built modules. | |||||
/// An awaitable <see cref="Task"/> containing the built module. | |||||
/// </returns> | /// </returns> | ||||
public async Task<IEnumerable<ModuleInfo>> AddModulesAsync(Assembly assembly, IServiceProvider services) | public async Task<IEnumerable<ModuleInfo>> AddModulesAsync(Assembly assembly, IServiceProvider services) | ||||
{ | { | ||||
@@ -296,22 +296,24 @@ namespace Discord.Commands | |||||
//Type Readers | //Type Readers | ||||
/// <summary> | /// <summary> | ||||
/// Adds a custom <see cref="TypeReader" /> to this <see cref="CommandService" /> for the supplied object type. | |||||
/// If <typeparamref name="T" /> is a <see cref="ValueType" />, a nullable <see cref="TypeReader" /> will also be | |||||
/// added. | |||||
/// If a default <see cref="TypeReader" /> exists for <typeparamref name="T" />, a warning will be logged and the | |||||
/// default <see cref="TypeReader" /> will be replaced. | |||||
/// Adds a custom <see cref="TypeReader" /> to this <see cref="CommandService" /> for the supplied object | |||||
/// type. | |||||
/// If <typeparamref name="T" /> is a <see cref="ValueType" />, a nullable <see cref="TypeReader" /> will | |||||
/// also be added. | |||||
/// If a default <see cref="TypeReader" /> exists for <typeparamref name="T" />, a warning will be logged | |||||
/// and the default <see cref="TypeReader" /> will be replaced. | |||||
/// </summary> | /// </summary> | ||||
/// <typeparam name="T">The object type to be read by the <see cref="TypeReader" />.</typeparam> | |||||
/// <typeparam name="T">The object type to be read by the <see cref="TypeReader"/>.</typeparam> | |||||
/// <param name="reader">An instance of the <see cref="TypeReader" /> to be added.</param> | /// <param name="reader">An instance of the <see cref="TypeReader" /> to be added.</param> | ||||
public void AddTypeReader<T>(TypeReader reader) | public void AddTypeReader<T>(TypeReader reader) | ||||
=> AddTypeReader(typeof(T), reader); | => AddTypeReader(typeof(T), reader); | ||||
/// <summary> | /// <summary> | ||||
/// Adds a custom <see cref="TypeReader" /> to this <see cref="CommandService" /> for the supplied object type. | |||||
/// If <paramref name="type" /> is a <see cref="ValueType" />, a nullable <see cref="TypeReader" /> for the value | |||||
/// type will also be added. | |||||
/// If a default <see cref="TypeReader" /> exists for <paramref name="type" />, a warning will be logged and the | |||||
/// default <see cref="TypeReader" /> will be replaced. | |||||
/// Adds a custom <see cref="TypeReader" /> to this <see cref="CommandService" /> for the supplied object | |||||
/// type. | |||||
/// If <paramref name="type" /> is a <see cref="ValueType" />, a nullable <see cref="TypeReader" /> for the | |||||
/// value type will also be added. | |||||
/// If a default <see cref="TypeReader" /> exists for <paramref name="type" />, a warning will be logged and | |||||
/// the default <see cref="TypeReader" /> will be replaced. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="type">A <see cref="Type" /> instance for the type to be read.</param> | /// <param name="type">A <see cref="Type" /> instance for the type to be read.</param> | ||||
/// <param name="reader">An instance of the <see cref="TypeReader" /> to be added.</param> | /// <param name="reader">An instance of the <see cref="TypeReader" /> to be added.</param> | ||||
@@ -323,11 +325,12 @@ namespace Discord.Commands | |||||
AddTypeReader(type, reader, true); | AddTypeReader(type, reader, true); | ||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// Adds a custom <see cref="TypeReader" /> to this <see cref="CommandService" /> for the supplied object type. | |||||
/// If <typeparamref name="T" /> is a <see cref="ValueType" />, a nullable <see cref="TypeReader" /> will also be | |||||
/// added. | |||||
/// Adds a custom <see cref="TypeReader" /> to this <see cref="CommandService" /> for the supplied object | |||||
/// type. | |||||
/// If <typeparamref name="T" /> is a <see cref="ValueType" />, a nullable <see cref="TypeReader" /> will | |||||
/// also be added. | |||||
/// </summary> | /// </summary> | ||||
/// <typeparam name="T">The object type to be read by the <see cref="TypeReader" />.</typeparam> | |||||
/// <typeparam name="T">The object type to be read by the <see cref="TypeReader"/>.</typeparam> | |||||
/// <param name="reader">An instance of the <see cref="TypeReader" /> to be added.</param> | /// <param name="reader">An instance of the <see cref="TypeReader" /> to be added.</param> | ||||
/// <param name="replaceDefault"> | /// <param name="replaceDefault"> | ||||
/// Defines whether the <see cref="TypeReader"/> should replace the default one for | /// Defines whether the <see cref="TypeReader"/> should replace the default one for | ||||
@@ -336,15 +339,16 @@ namespace Discord.Commands | |||||
public void AddTypeReader<T>(TypeReader reader, bool replaceDefault) | public void AddTypeReader<T>(TypeReader reader, bool replaceDefault) | ||||
=> AddTypeReader(typeof(T), reader, replaceDefault); | => AddTypeReader(typeof(T), reader, replaceDefault); | ||||
/// <summary> | /// <summary> | ||||
/// Adds a custom <see cref="TypeReader" /> to this <see cref="CommandService" /> for the supplied object type. | |||||
/// If <paramref name="type" /> is a <see cref="ValueType" />, a nullable <see cref="TypeReader" /> for the value | |||||
/// type will also be added. | |||||
/// Adds a custom <see cref="TypeReader" /> to this <see cref="CommandService" /> for the supplied object | |||||
/// type. | |||||
/// If <paramref name="type" /> is a <see cref="ValueType" />, a nullable <see cref="TypeReader" /> for the | |||||
/// value type will also be added. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="type">A <see cref="Type" /> instance for the type to be read.</param> | /// <param name="type">A <see cref="Type" /> instance for the type to be read.</param> | ||||
/// <param name="reader">An instance of the <see cref="TypeReader" /> to be added.</param> | /// <param name="reader">An instance of the <see cref="TypeReader" /> to be added.</param> | ||||
/// <param name="replaceDefault"> | /// <param name="replaceDefault"> | ||||
/// Defines whether the <see cref="TypeReader"/> should replace the default one for | |||||
/// <see cref="Type" /> if it exists. | |||||
/// Defines whether the <see cref="TypeReader"/> should replace the default one for <see cref="Type" /> if | |||||
/// it exists. | |||||
/// </param> | /// </param> | ||||
public void AddTypeReader(Type type, TypeReader reader, bool replaceDefault) | public void AddTypeReader(Type type, TypeReader reader, bool replaceDefault) | ||||
{ | { | ||||
@@ -4,7 +4,7 @@ using System.Collections.Generic; | |||||
namespace Discord.Commands | namespace Discord.Commands | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// Represents a configuration class for <see cref="CommandService" />. | |||||
/// Represents a configuration class for <see cref="CommandService"/>. | |||||
/// </summary> | /// </summary> | ||||
public class CommandServiceConfig | public class CommandServiceConfig | ||||
{ | { | ||||
@@ -16,7 +16,7 @@ namespace Discord.Commands | |||||
/// </summary> | /// </summary> | ||||
/// <remarks> | /// <remarks> | ||||
/// This object contains the information of a command. This can include the module of the command, various | /// This object contains the information of a command. This can include the module of the command, various | ||||
/// descriptions regarding the command, and its <see cref="RunMode" />. | |||||
/// descriptions regarding the command, and its <see cref="RunMode"/>. | |||||
/// </remarks> | /// </remarks> | ||||
[DebuggerDisplay("{Name,nq}")] | [DebuggerDisplay("{Name,nq}")] | ||||
public class CommandInfo | public class CommandInfo | ||||
@@ -18,7 +18,7 @@ namespace Discord | |||||
/// Creates a <see cref="Game"/> with the provided <paramref name="name"/> and <see cref="ActivityType"/>. | /// Creates a <see cref="Game"/> with the provided <paramref name="name"/> and <see cref="ActivityType"/>. | ||||
/// </summary> | /// </summary> | ||||
/// <param name="name">The name of the game.</param> | /// <param name="name">The name of the game.</param> | ||||
/// <param name="type">The type of activity. Default is <see cref="Discord.ActivityType.Playing" />.</param> | |||||
/// <param name="type">The type of activity. Default is <see cref="Discord.ActivityType.Playing"/>.</param> | |||||
public Game(string name, ActivityType type = ActivityType.Playing) | public Game(string name, ActivityType type = ActivityType.Playing) | ||||
{ | { | ||||
Name = name; | Name = name; | ||||
@@ -1,7 +1,7 @@ | |||||
namespace Discord | namespace Discord | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// Represents data applied to an <see cref="IAuditLogEntry" />. | |||||
/// Represents data applied to an <see cref="IAuditLogEntry"/>. | |||||
/// </summary> | /// </summary> | ||||
public interface IAuditLogData | public interface IAuditLogData | ||||
{ } | { } | ||||
@@ -1,7 +1,7 @@ | |||||
namespace Discord | namespace Discord | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// Properties that are used to reorder an <see cref="IGuildChannel" />. | |||||
/// Properties that are used to reorder an <see cref="IGuildChannel"/>. | |||||
/// </summary> | /// </summary> | ||||
public class ReorderChannelProperties | public class ReorderChannelProperties | ||||
{ | { | ||||
@@ -9,11 +9,11 @@ namespace Discord | |||||
public class EmoteProperties | public class EmoteProperties | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// Gets or sets the name of the <see cref="Emote" />. | |||||
/// Gets or sets the name of the <see cref="Emote"/>. | |||||
/// </summary> | /// </summary> | ||||
public Optional<string> Name { get; set; } | public Optional<string> Name { get; set; } | ||||
/// <summary> | /// <summary> | ||||
/// Gets or sets the roles that can access this <see cref="Emote" />. | |||||
/// Gets or sets the roles that can access this <see cref="Emote"/>. | |||||
/// </summary> | /// </summary> | ||||
public Optional<IEnumerable<IRole>> Roles { get; set; } | public Optional<IEnumerable<IRole>> Roles { get; set; } | ||||
} | } | ||||
@@ -11,7 +11,7 @@ namespace Discord | |||||
/// </summary> | /// </summary> | ||||
public Stream Stream { get; } | public Stream Stream { get; } | ||||
/// <summary> | /// <summary> | ||||
/// Create the image with a <see cref="System.IO.Stream" />. | |||||
/// Create the image with a <see cref="System.IO.Stream"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="stream"> | /// <param name="stream"> | ||||
/// The <see cref="System.IO.Stream" /> to create the image with. Note that this must be some type of stream | /// The <see cref="System.IO.Stream" /> to create the image with. Note that this must be some type of stream | ||||
@@ -32,7 +32,7 @@ namespace Discord | |||||
/// <param name="path">The path to the file.</param> | /// <param name="path">The path to the file.</param> | ||||
/// <exception cref="System.ArgumentException"> | /// <exception cref="System.ArgumentException"> | ||||
/// <paramref name="path" /> is a zero-length string, contains only white space, or contains one or more invalid | /// <paramref name="path" /> is a zero-length string, contains only white space, or contains one or more invalid | ||||
/// characters as defined by <see cref="Path.GetInvalidPathChars" />. | |||||
/// characters as defined by <see cref="Path.GetInvalidPathChars"/>. | |||||
/// </exception> | /// </exception> | ||||
/// <exception cref="System.ArgumentNullException"><paramref name="path" /> is <c>null</c>.</exception> | /// <exception cref="System.ArgumentNullException"><paramref name="path" /> is <c>null</c>.</exception> | ||||
/// <exception cref="PathTooLongException"> | /// <exception cref="PathTooLongException"> | ||||
@@ -6,7 +6,7 @@ using System.Linq; | |||||
namespace Discord | namespace Discord | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// Represents an embed object seen in an <see cref="IUserMessage" />. | |||||
/// Represents an embed object seen in an <see cref="IUserMessage"/>. | |||||
/// </summary> | /// </summary> | ||||
[DebuggerDisplay(@"{DebuggerDisplay,nq}")] | [DebuggerDisplay(@"{DebuggerDisplay,nq}")] | ||||
public class Embed : IEmbed | public class Embed : IEmbed | ||||
@@ -3,7 +3,7 @@ using System.Diagnostics; | |||||
namespace Discord | namespace Discord | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// A author field of an <see cref="Embed" />. | |||||
/// A author field of an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
[DebuggerDisplay("{DebuggerDisplay,nq}")] | [DebuggerDisplay("{DebuggerDisplay,nq}")] | ||||
public struct EmbedAuthor | public struct EmbedAuthor | ||||
@@ -6,7 +6,7 @@ using System.Linq; | |||||
namespace Discord | namespace Discord | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// Represents a builder class for creating a <see cref="EmbedType.Rich"/> <see cref="Embed" />. | |||||
/// Represents a builder class for creating a <see cref="EmbedType.Rich"/> <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
public class EmbedBuilder | public class EmbedBuilder | ||||
{ | { | ||||
@@ -122,28 +122,28 @@ namespace Discord | |||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// Gets or sets the timestamp of an <see cref="Embed" />. | |||||
/// Gets or sets the timestamp of an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <returns> | /// <returns> | ||||
/// The timestamp of the embed, or <c>null</c> if none is set. | /// The timestamp of the embed, or <c>null</c> if none is set. | ||||
/// </returns> | /// </returns> | ||||
public DateTimeOffset? Timestamp { get; set; } | public DateTimeOffset? Timestamp { get; set; } | ||||
/// <summary> | /// <summary> | ||||
/// Gets or sets the sidebar color of an <see cref="Embed" />. | |||||
/// Gets or sets the sidebar color of an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <returns> | /// <returns> | ||||
/// The color of the embed, or <c>null</c> if none is set. | /// The color of the embed, or <c>null</c> if none is set. | ||||
/// </returns> | /// </returns> | ||||
public Color? Color { get; set; } | public Color? Color { get; set; } | ||||
/// <summary> | /// <summary> | ||||
/// Gets or sets the <see cref="EmbedAuthorBuilder" /> of an <see cref="Embed" />. | |||||
/// Gets or sets the <see cref="EmbedAuthorBuilder" /> of an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <returns> | /// <returns> | ||||
/// The author field builder of the embed, or <c>null</c> if none is set. | /// The author field builder of the embed, or <c>null</c> if none is set. | ||||
/// </returns> | /// </returns> | ||||
public EmbedAuthorBuilder Author { get; set; } | public EmbedAuthorBuilder Author { get; set; } | ||||
/// <summary> | /// <summary> | ||||
/// Gets or sets the <see cref="EmbedFooterBuilder" /> of an <see cref="Embed" />. | |||||
/// Gets or sets the <see cref="EmbedFooterBuilder" /> of an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <returns> | /// <returns> | ||||
/// The footer field builder of the embed, or <c>null</c> if none is set. | /// The footer field builder of the embed, or <c>null</c> if none is set. | ||||
@@ -172,7 +172,7 @@ namespace Discord | |||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// Sets the title of an <see cref="Embed" />. | |||||
/// Sets the title of an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="title">The title to be set.</param> | /// <param name="title">The title to be set.</param> | ||||
/// <returns> | /// <returns> | ||||
@@ -220,7 +220,7 @@ namespace Discord | |||||
return this; | return this; | ||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// Sets the image URL of an <see cref="Embed" />. | |||||
/// Sets the image URL of an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="imageUrl">The image URL to be set.</param> | /// <param name="imageUrl">The image URL to be set.</param> | ||||
/// <returns> | /// <returns> | ||||
@@ -243,7 +243,7 @@ namespace Discord | |||||
return this; | return this; | ||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// Sets the timestamp of an <see cref="Embed" />. | |||||
/// Sets the timestamp of an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="dateTimeOffset">The timestamp to be set.</param> | /// <param name="dateTimeOffset">The timestamp to be set.</param> | ||||
/// <returns> | /// <returns> | ||||
@@ -255,7 +255,7 @@ namespace Discord | |||||
return this; | return this; | ||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// Sets the sidebar color of an <see cref="Embed" />. | |||||
/// Sets the sidebar color of an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="color">The color to be set.</param> | /// <param name="color">The color to be set.</param> | ||||
/// <returns> | /// <returns> | ||||
@@ -268,7 +268,7 @@ namespace Discord | |||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// Sets the <see cref="EmbedAuthorBuilder" /> of an <see cref="Embed" />. | |||||
/// Sets the <see cref="EmbedAuthorBuilder" /> of an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="author">The author builder class containing the author field properties.</param> | /// <param name="author">The author builder class containing the author field properties.</param> | ||||
/// <returns> | /// <returns> | ||||
@@ -314,7 +314,7 @@ namespace Discord | |||||
return this; | return this; | ||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// Sets the <see cref="EmbedFooterBuilder" /> of an <see cref="Embed" />. | |||||
/// Sets the <see cref="EmbedFooterBuilder" /> of an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="footer">The footer builder class containing the footer field properties.</param> | /// <param name="footer">The footer builder class containing the footer field properties.</param> | ||||
/// <returns> | /// <returns> | ||||
@@ -379,7 +379,7 @@ namespace Discord | |||||
/// <summary> | /// <summary> | ||||
/// Adds a field with the provided <see cref="EmbedFieldBuilder" /> to an | /// Adds a field with the provided <see cref="EmbedFieldBuilder" /> to an | ||||
/// <see cref="Embed" />. | |||||
/// <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="field">The field builder class containing the field properties.</param> | /// <param name="field">The field builder class containing the field properties.</param> | ||||
/// <exception cref="ArgumentException">Field count exceeds <see cref="MaxFieldCount"/>.</exception> | /// <exception cref="ArgumentException">Field count exceeds <see cref="MaxFieldCount"/>.</exception> | ||||
@@ -564,7 +564,7 @@ namespace Discord | |||||
/// Gets or sets the author name. | /// Gets or sets the author name. | ||||
/// </summary> | /// </summary> | ||||
/// <exception cref="ArgumentException"> | /// <exception cref="ArgumentException"> | ||||
/// Author name length is longer than <see cref="MaxAuthorNameLength" />. | |||||
/// Author name length is longer than <see cref="MaxAuthorNameLength"/>. | |||||
/// </exception> | /// </exception> | ||||
/// <returns> | /// <returns> | ||||
/// The author name. | /// The author name. | ||||
@@ -652,11 +652,11 @@ namespace Discord | |||||
/// Builds the author field to be used. | /// Builds the author field to be used. | ||||
/// </summary> | /// </summary> | ||||
/// <exception cref="ArgumentException"> | /// <exception cref="ArgumentException"> | ||||
/// <para>Author name length is longer than <see cref="MaxAuthorNameLength" />.</para> | |||||
/// <para>Author name length is longer than <see cref="MaxAuthorNameLength"/>.</para> | |||||
/// <para><c>- or -</c></para> | /// <para><c>- or -</c></para> | ||||
/// <para><see cref="Url"/> is not a well-formed <see cref="Uri" />.</para> | |||||
/// <para><see cref="Url"/> is not a well-formed <see cref="Uri"/>.</para> | |||||
/// <para><c>- or -</c></para> | /// <para><c>- or -</c></para> | ||||
/// <para><see cref="IconUrl"/> is not a well-formed <see cref="Uri" />.</para> | |||||
/// <para><see cref="IconUrl"/> is not a well-formed <see cref="Uri"/>.</para> | |||||
/// </exception> | /// </exception> | ||||
/// <returns> | /// <returns> | ||||
/// The built author field. | /// The built author field. | ||||
@@ -682,7 +682,7 @@ namespace Discord | |||||
/// Gets or sets the footer text. | /// Gets or sets the footer text. | ||||
/// </summary> | /// </summary> | ||||
/// <exception cref="ArgumentException"> | /// <exception cref="ArgumentException"> | ||||
/// Author name length is longer than <see cref="MaxFooterTextLength" />. | |||||
/// Author name length is longer than <see cref="MaxFooterTextLength"/>. | |||||
/// </exception> | /// </exception> | ||||
/// <returns> | /// <returns> | ||||
/// The footer text. | /// The footer text. | ||||
@@ -743,7 +743,7 @@ namespace Discord | |||||
/// </summary> | /// </summary> | ||||
/// <returns></returns> | /// <returns></returns> | ||||
/// <exception cref="ArgumentException"> | /// <exception cref="ArgumentException"> | ||||
/// <para><see cref="Text"/> length is longer than <see cref="MaxFooterTextLength" />.</para> | |||||
/// <para><see cref="Text"/> length is longer than <see cref="MaxFooterTextLength"/>.</para> | |||||
/// <para><c>- or -</c></para> | /// <para><c>- or -</c></para> | ||||
/// <para><see cref="IconUrl"/> is not a well-formed <see cref="Uri"/>.</para> | /// <para><see cref="IconUrl"/> is not a well-formed <see cref="Uri"/>.</para> | ||||
/// </exception> | /// </exception> | ||||
@@ -3,7 +3,7 @@ using System.Diagnostics; | |||||
namespace Discord | namespace Discord | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// A field for an <see cref="Embed" />. | |||||
/// A field for an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
[DebuggerDisplay("{DebuggerDisplay,nq}")] | [DebuggerDisplay("{DebuggerDisplay,nq}")] | ||||
public struct EmbedField | public struct EmbedField | ||||
@@ -3,7 +3,7 @@ using System.Diagnostics; | |||||
namespace Discord | namespace Discord | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// A video featured in an <see cref="Embed" />. | |||||
/// A video featured in an <see cref="Embed"/>. | |||||
/// </summary> | /// </summary> | ||||
[DebuggerDisplay("{DebuggerDisplay,nq}")] | [DebuggerDisplay("{DebuggerDisplay,nq}")] | ||||
public struct EmbedVideo | public struct EmbedVideo | ||||
@@ -23,11 +23,11 @@ namespace Discord | |||||
=> new OverwritePermissions(0, ChannelPermissions.All(channel).RawValue); | => new OverwritePermissions(0, ChannelPermissions.All(channel).RawValue); | ||||
/// <summary> | /// <summary> | ||||
/// Gets a packed value representing all the allowed permissions in this <see cref="OverwritePermissions" />. | |||||
/// Gets a packed value representing all the allowed permissions in this <see cref="OverwritePermissions"/>. | |||||
/// </summary> | /// </summary> | ||||
public ulong AllowValue { get; } | public ulong AllowValue { get; } | ||||
/// <summary> | /// <summary> | ||||
/// Gets a packed value representing all the denied permissions in this <see cref="OverwritePermissions" />. | |||||
/// Gets a packed value representing all the denied permissions in this <see cref="OverwritePermissions"/>. | |||||
/// </summary> | /// </summary> | ||||
public ulong DenyValue { get; } | public ulong DenyValue { get; } | ||||
@@ -1,7 +1,7 @@ | |||||
namespace Discord | namespace Discord | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// Properties that are used to reorder an <see cref="IRole" />. | |||||
/// Properties that are used to reorder an <see cref="IRole"/>. | |||||
/// </summary> | /// </summary> | ||||
public class ReorderRoleProperties | public class ReorderRoleProperties | ||||
{ | { | ||||
@@ -14,7 +14,7 @@ namespace Discord | |||||
/// </remarks> | /// </remarks> | ||||
public Optional<string> Name { get; set; } | public Optional<string> Name { get; set; } | ||||
/// <summary> | /// <summary> | ||||
/// Gets or sets the role's <see cref="GuildPermission" />. | |||||
/// Gets or sets the role's <see cref="GuildPermission"/>. | |||||
/// </summary> | /// </summary> | ||||
public Optional<GuildPermissions> Permissions { get; set; } | public Optional<GuildPermissions> Permissions { get; set; } | ||||
/// <summary> | /// <summary> | ||||
@@ -27,7 +27,7 @@ namespace Discord | |||||
/// </summary> | /// </summary> | ||||
/// <remarks> | /// <remarks> | ||||
/// To clear the user's nickname, this value can be set to <c>null</c> or | /// To clear the user's nickname, this value can be set to <c>null</c> or | ||||
/// <see cref="string.Empty" />. | |||||
/// <see cref="string.Empty"/>. | |||||
/// </remarks> | /// </remarks> | ||||
public Optional<string> Nickname { get; set; } | public Optional<string> Nickname { get; set; } | ||||
/// <summary> | /// <summary> | ||||
@@ -18,14 +18,14 @@ namespace Discord | |||||
/// Gets or sets the channel for this webhook. | /// Gets or sets the channel for this webhook. | ||||
/// </summary> | /// </summary> | ||||
/// <remarks> | /// <remarks> | ||||
/// This field is not used when authenticated with <see cref="Discord.TokenType.Webhook" />. | |||||
/// This field is not used when authenticated with <see cref="Discord.TokenType.Webhook"/>. | |||||
/// </remarks> | /// </remarks> | ||||
public Optional<ITextChannel> Channel { get; set; } | public Optional<ITextChannel> Channel { get; set; } | ||||
/// <summary> | /// <summary> | ||||
/// Gets or sets the channel ID for this webhook. | /// Gets or sets the channel ID for this webhook. | ||||
/// </summary> | /// </summary> | ||||
/// <remarks> | /// <remarks> | ||||
/// This field is not used when authenticated with <see cref="Discord.TokenType.Webhook" />. | |||||
/// This field is not used when authenticated with <see cref="Discord.TokenType.Webhook"/>. | |||||
/// </remarks> | /// </remarks> | ||||
public Optional<ulong> ChannelId { get; set; } | public Optional<ulong> ChannelId { get; set; } | ||||
} | } | ||||
@@ -47,7 +47,7 @@ namespace Discord | |||||
/// <summary> | /// <summary> | ||||
/// Initializes a new <see cref="RequestOptions" /> class with the default request timeout set in | /// Initializes a new <see cref="RequestOptions" /> class with the default request timeout set in | ||||
/// <see cref="DiscordConfig" />. | |||||
/// <see cref="DiscordConfig"/>. | |||||
/// </summary> | /// </summary> | ||||
public RequestOptions() | public RequestOptions() | ||||
{ | { | ||||
@@ -3,7 +3,7 @@ using Discord.Net.Rest; | |||||
namespace Discord.Rest | namespace Discord.Rest | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// Represents a configuration class for <see cref="DiscordRestClient" />. | |||||
/// Represents a configuration class for <see cref="DiscordRestClient"/>. | |||||
/// </summary> | /// </summary> | ||||
public class DiscordRestConfig : DiscordConfig | public class DiscordRestConfig : DiscordConfig | ||||
{ | { | ||||
@@ -71,7 +71,7 @@ namespace Discord.Rest | |||||
/// Gets a collection of permission overwrites that was assigned to the created channel. | /// Gets a collection of permission overwrites that was assigned to the created channel. | ||||
/// </summary> | /// </summary> | ||||
/// <returns> | /// <returns> | ||||
/// A collection of permission <see cref="Overwrite" />. | |||||
/// A collection of permission <see cref="Overwrite"/>. | |||||
/// </returns> | /// </returns> | ||||
public IReadOnlyCollection<Overwrite> Overwrites { get; } | public IReadOnlyCollection<Overwrite> Overwrites { get; } | ||||
} | } | ||||
@@ -62,7 +62,7 @@ namespace Discord.Rest | |||||
/// Gets a collection of permission overwrites that was assigned to the deleted channel. | /// Gets a collection of permission overwrites that was assigned to the deleted channel. | ||||
/// </summary> | /// </summary> | ||||
/// <returns> | /// <returns> | ||||
/// A collection of permission <see cref="Overwrite" />. | |||||
/// A collection of permission <see cref="Overwrite"/>. | |||||
/// </returns> | /// </returns> | ||||
public IReadOnlyCollection<Overwrite> Overwrites { get; } | public IReadOnlyCollection<Overwrite> Overwrites { get; } | ||||
} | } | ||||
@@ -164,7 +164,7 @@ namespace Discord.Rest | |||||
/// <exception cref="ArgumentException"> | /// <exception cref="ArgumentException"> | ||||
/// <paramref name="filePath" /> is a zero-length string, contains only white space, or contains one or more | /// <paramref name="filePath" /> is a zero-length string, contains only white space, or contains one or more | ||||
/// invalid characters as defined by <see cref="System.IO.Path.GetInvalidPathChars" />. | |||||
/// invalid characters as defined by <see cref="System.IO.Path.GetInvalidPathChars"/>. | |||||
/// </exception> | /// </exception> | ||||
/// <exception cref="ArgumentNullException"> | /// <exception cref="ArgumentNullException"> | ||||
/// <paramref name="filePath" /> is <c>null</c>. | /// <paramref name="filePath" /> is <c>null</c>. | ||||
@@ -81,7 +81,7 @@ namespace Discord.Rest | |||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
/// <exception cref="ArgumentException"> | /// <exception cref="ArgumentException"> | ||||
/// <paramref name="filePath" /> is a zero-length string, contains only white space, or contains one or more | /// <paramref name="filePath" /> is a zero-length string, contains only white space, or contains one or more | ||||
/// invalid characters as defined by <see cref="System.IO.Path.GetInvalidPathChars" />. | |||||
/// invalid characters as defined by <see cref="System.IO.Path.GetInvalidPathChars"/>. | |||||
/// </exception> | /// </exception> | ||||
/// <exception cref="ArgumentNullException"> | /// <exception cref="ArgumentNullException"> | ||||
/// <paramref name="filePath" /> is <c>null</c>. | /// <paramref name="filePath" /> is <c>null</c>. | ||||
@@ -98,7 +98,7 @@ namespace Discord.Rest | |||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
/// <exception cref="ArgumentException"> | /// <exception cref="ArgumentException"> | ||||
/// <paramref name="filePath" /> is a zero-length string, contains only white space, or contains one or more | /// <paramref name="filePath" /> is a zero-length string, contains only white space, or contains one or more | ||||
/// invalid characters as defined by <see cref="System.IO.Path.GetInvalidPathChars" />. | |||||
/// invalid characters as defined by <see cref="System.IO.Path.GetInvalidPathChars"/>. | |||||
/// </exception> | /// </exception> | ||||
/// <exception cref="ArgumentNullException"> | /// <exception cref="ArgumentNullException"> | ||||
/// <paramref name="filePath" /> is <c>null</c>. | /// <paramref name="filePath" /> is <c>null</c>. | ||||
@@ -79,7 +79,7 @@ namespace Discord.Rest | |||||
/// <inheritdoc /> | /// <inheritdoc /> | ||||
/// <exception cref="ArgumentException"> | /// <exception cref="ArgumentException"> | ||||
/// <paramref name="filePath" /> is a zero-length string, contains only white space, or contains one or more | /// <paramref name="filePath" /> is a zero-length string, contains only white space, or contains one or more | ||||
/// invalid characters as defined by <see cref="System.IO.Path.GetInvalidPathChars" />. | |||||
/// invalid characters as defined by <see cref="System.IO.Path.GetInvalidPathChars"/>. | |||||
/// </exception> | /// </exception> | ||||
/// <exception cref="ArgumentNullException"> | /// <exception cref="ArgumentNullException"> | ||||
/// <paramref name="filePath" /> is <c>null</c>. | /// <paramref name="filePath" /> is <c>null</c>. | ||||
@@ -4,7 +4,7 @@ using Model = Discord.API.Attachment; | |||||
namespace Discord | namespace Discord | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// An attachment file seen in a <see cref="IUserMessage" />. | |||||
/// An attachment file seen in a <see cref="IUserMessage"/>. | |||||
/// </summary> | /// </summary> | ||||
[DebuggerDisplay(@"{DebuggerDisplay,nq}")] | [DebuggerDisplay(@"{DebuggerDisplay,nq}")] | ||||
public class Attachment : IAttachment | public class Attachment : IAttachment | ||||
@@ -107,18 +107,19 @@ namespace Discord.WebSocket | |||||
/// <summary> | /// <summary> | ||||
/// Gets a channel. | /// Gets a channel. | ||||
/// </summary> | /// </summary> | ||||
/// <param name="id">The channel snowflake ID.</param> | |||||
/// <param name="id">The channel snowflake identifier.</param> | |||||
/// <returns> | /// <returns> | ||||
/// A generic WebSocket-based channel object (voice, text, category, etc.); <c>null</c> when the | |||||
/// channel cannot be found. | |||||
/// A generic WebSocket-based channel object (voice, text, category, etc.) associated with the identifier; | |||||
/// <c>null</c> when the channel cannot be found. | |||||
/// </returns> | /// </returns> | ||||
public abstract SocketChannel GetChannel(ulong id); | public abstract SocketChannel GetChannel(ulong id); | ||||
/// <summary> | /// <summary> | ||||
/// Gets a guild. | /// Gets a guild. | ||||
/// </summary> | /// </summary> | ||||
/// <param name="id">The guild snowflake ID.</param> | |||||
/// <param name="id">The guild snowflake identifier.</param> | |||||
/// <returns> | /// <returns> | ||||
/// A WebSocket-based guild; <c>null</c> when the guild cannot be found. | |||||
/// A WebSocket-based guild associated with the snowflake identifier; <c>null</c> when the guild cannot be | |||||
/// found. | |||||
/// </returns> | /// </returns> | ||||
public abstract SocketGuild GetGuild(ulong id); | public abstract SocketGuild GetGuild(ulong id); | ||||
/// <summary> | /// <summary> | ||||
@@ -5,7 +5,7 @@ using Discord.Rest; | |||||
namespace Discord.WebSocket | namespace Discord.WebSocket | ||||
{ | { | ||||
/// <summary> | /// <summary> | ||||
/// Represents a configuration class for <see cref="DiscordSocketClient" />. | |||||
/// Represents a configuration class for <see cref="DiscordSocketClient"/>. | |||||
/// </summary> | /// </summary> | ||||
public class DiscordSocketConfig : DiscordRestConfig | public class DiscordSocketConfig : DiscordRestConfig | ||||
{ | { | ||||
@@ -48,11 +48,11 @@ namespace Discord.WebSocket | |||||
/// </summary> | /// </summary> | ||||
/// <remarks> | /// <remarks> | ||||
/// This method does NOT attempt to fetch the user if they don't exist in the cache. To guarantee a return | /// This method does NOT attempt to fetch the user if they don't exist in the cache. To guarantee a return | ||||
/// from an existing user that doesn't exist in cache, use <see cref="Rest.DiscordRestClient.GetUserAsync" />. | |||||
/// from an existing user that doesn't exist in cache, use <see cref="Rest.DiscordRestClient.GetUserAsync"/>. | |||||
/// </remarks> | /// </remarks> | ||||
/// <param name="id">The ID of the user.</param> | |||||
/// <param name="id">The snowflake identifier of the user.</param> | |||||
/// <returns> | /// <returns> | ||||
/// The user. | |||||
/// A user object associated with the snowflake identifier. | |||||
/// </returns> | /// </returns> | ||||
public SocketUser GetUser(ulong id) => GetUserInternal(id); | public SocketUser GetUser(ulong id) => GetUserInternal(id); | ||||
internal abstract SocketUser GetUserInternal(ulong id); | internal abstract SocketUser GetUserInternal(ulong id); | ||||
@@ -142,9 +142,9 @@ namespace Discord.WebSocket | |||||
/// </summary> | /// </summary> | ||||
/// <remarks> | /// <remarks> | ||||
/// This method does NOT attempt to fetch the user if they don't exist in the cache. To guarantee a return | /// This method does NOT attempt to fetch the user if they don't exist in the cache. To guarantee a return | ||||
/// from an existing user that doesn't exist in cache, use <see cref="DiscordRestClient.GetUserAsync" />. | |||||
/// from an existing user that doesn't exist in cache, use <see cref="DiscordRestClient.GetUserAsync"/>. | |||||
/// </remarks> | /// </remarks> | ||||
/// <param name="id">The ID of the user.</param> | |||||
/// <param name="id">The snowflake identifier of the user.</param> | |||||
/// <returns> | /// <returns> | ||||
/// The user in the group. | /// The user in the group. | ||||
/// </returns> | /// </returns> | ||||
@@ -155,21 +155,21 @@ namespace Discord.WebSocket | |||||
public Task<RestWebhook> CreateWebhookAsync(string name, Stream avatar = null, RequestOptions options = null) | public Task<RestWebhook> CreateWebhookAsync(string name, Stream avatar = null, RequestOptions options = null) | ||||
=> ChannelHelper.CreateWebhookAsync(this, Discord, name, avatar, options); | => ChannelHelper.CreateWebhookAsync(this, Discord, name, avatar, options); | ||||
/// <summary> | /// <summary> | ||||
/// Gets the webhook in this text channel with the provided ID. | |||||
/// Gets a webhook available in this text channel. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="id">The ID of the webhook.</param> | |||||
/// <param name="id">The identifier of the webhook.</param> | |||||
/// <param name="options">The options to be used when sending the request.</param> | /// <param name="options">The options to be used when sending the request.</param> | ||||
/// <returns> | /// <returns> | ||||
/// A webhook associated with the <paramref name="id"/>, or <c>null</c> if not found. | |||||
/// An awaitable <see cref="Task"/> webhook associated with the identifier, or <c>null</c> if not found. | |||||
/// </returns> | /// </returns> | ||||
public Task<RestWebhook> GetWebhookAsync(ulong id, RequestOptions options = null) | public Task<RestWebhook> GetWebhookAsync(ulong id, RequestOptions options = null) | ||||
=> ChannelHelper.GetWebhookAsync(this, Discord, id, options); | => ChannelHelper.GetWebhookAsync(this, Discord, id, options); | ||||
/// <summary> | /// <summary> | ||||
/// Gets the webhooks for this text channel. | |||||
/// Gets the webhooks available in this text channel. | |||||
/// </summary> | /// </summary> | ||||
/// <param name="options">The options to be used when sending the request.</param> | /// <param name="options">The options to be used when sending the request.</param> | ||||
/// <returns> | /// <returns> | ||||
/// A collection of webhooks. | |||||
/// An awaitable <see cref="Task"/> collection of webhooks. | |||||
/// </returns> | /// </returns> | ||||
public Task<IReadOnlyCollection<RestWebhook>> GetWebhooksAsync(RequestOptions options = null) | public Task<IReadOnlyCollection<RestWebhook>> GetWebhooksAsync(RequestOptions options = null) | ||||
=> ChannelHelper.GetWebhooksAsync(this, Discord, options); | => ChannelHelper.GetWebhooksAsync(this, Discord, options); | ||||
@@ -530,7 +530,7 @@ namespace Discord.WebSocket | |||||
/// </summary> | /// </summary> | ||||
/// <param name="options">The options to be used when sending the request.</param> | /// <param name="options">The options to be used when sending the request.</param> | ||||
/// <returns> | /// <returns> | ||||
/// A collection of invites. | |||||
/// An awaitable <see cref="Task"/> containing a collection of invites. | |||||
/// </returns> | /// </returns> | ||||
public Task<IReadOnlyCollection<RestInviteMetadata>> GetInvitesAsync(RequestOptions options = null) | public Task<IReadOnlyCollection<RestInviteMetadata>> GetInvitesAsync(RequestOptions options = null) | ||||
=> GuildHelper.GetInvitesAsync(this, Discord, options); | => GuildHelper.GetInvitesAsync(this, Discord, options); | ||||
@@ -11,7 +11,7 @@ namespace Discord.WebSocket | |||||
/// Gets the ID of the user who added the reaction. | /// Gets the ID of the user who added the reaction. | ||||
/// </summary> | /// </summary> | ||||
/// <returns> | /// <returns> | ||||
/// A user snowflake ID. | |||||
/// A user snowflake identifier associated with the user. | |||||
/// </returns> | /// </returns> | ||||
public ulong UserId { get; } | public ulong UserId { get; } | ||||
/// <summary> | /// <summary> | ||||
@@ -25,15 +25,16 @@ namespace Discord.WebSocket | |||||
/// Gets the ID of the message that has been reacted to. | /// Gets the ID of the message that has been reacted to. | ||||
/// </summary> | /// </summary> | ||||
/// <returns> | /// <returns> | ||||
/// A message snowflake ID. | |||||
/// A message snowflake identifier associated with the message. | |||||
/// </returns> | /// </returns> | ||||
public ulong MessageId { get; } | public ulong MessageId { get; } | ||||
/// <summary> | /// <summary> | ||||
/// Gets the message that has been reacted to if possible. | /// Gets the message that has been reacted to if possible. | ||||
/// </summary> | /// </summary> | ||||
/// <returns> | /// <returns> | ||||
/// A WebSocket-based message where possible. This value is not always returned. | |||||
/// A WebSocket-based message where possible; a value is not always returned. | |||||
/// </returns> | /// </returns> | ||||
/// <seealso cref="Optional{T}"/> | |||||
public Optional<SocketUserMessage> Message { get; } | public Optional<SocketUserMessage> Message { get; } | ||||
/// <summary> | /// <summary> | ||||
/// Gets the channel where the reaction takes place in. | /// Gets the channel where the reaction takes place in. | ||||