p

ackcord

package ackcord

Source
ackcord.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ackcord
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. sealed trait APIMessage extends AnyRef

    Base trait normal messages.

  2. case class APIMessageCacheUpdate[Data](data: Data, sendEvent: (CacheState) ⇒ Option[APIMessage], handler: CacheHandler[Data]) extends CacheUpdate[Data] with Product with Serializable

    An event that should publish an APIMessage.

    An event that should publish an APIMessage.

    Data

    The data it contains.

    data

    The data.

    sendEvent

    A function to gather the needed variables to send the event.

    handler

    The handler to process the data of this event with.

  3. type BotAuthentication = ackcord.requests.BotAuthentication.type
  4. case class Cache(publish: Sink[CacheUpdate[Any], NotUsed], subscribe: Source[(CacheUpdate[Any], CacheState), NotUsed], gatewayPublish: Sink[GatewayMessage[Any], NotUsed], gatewaySubscribe: Source[GatewayMessage[Any], NotUsed])(implicit mat: Materializer) extends Product with Serializable

    Represents a cache that can be published and subscribed to.

    Represents a cache that can be published and subscribed to.

    publish

    A sink used for publishing. Any elements connected to this sink is published to the cache.

    subscribe

    A source to subscribe to. All updates are pushed here.

  5. trait CacheSnapshot[F[_]] extends AnyRef

    A representation of the cache.

  6. trait CacheSnapshotId extends CacheSnapshot[Id]
  7. case class CacheState(current: MemoryCacheSnapshot, previous: MemoryCacheSnapshot) extends Product with Serializable

    Represents the state of the cache for a single point.

    Represents the state of the cache for a single point.

    current

    The current values in the cache.

    previous

    The previous values in the cache.

  8. sealed trait CacheUpdate[Data] extends AnyRef

    Represents some sort of event handled by the cache

    Represents some sort of event handled by the cache

    Data

    The data it contains

  9. class ClientSettings extends GatewaySettings

    Settings used when connecting to Discord.

  10. abstract class CommandHandler[F[_], G[_], A] extends AnyRef

    A handler for a specific command.

    A handler for a specific command.

    A

    The parameter type.

  11. trait CommandsHelper[F[_]] extends AnyRef

    An object which manages a ackcord.commands.Commands instance.

  12. case class CoreDiscordClient(shards: Seq[ActorRef], cache: Cache, commands: Commands[Id], requests: RequestHelper) extends DiscordClient[Id] with Product with Serializable
  13. trait DiscordClient[F[_]] extends CommandsHelper[F]

    Trait used to interface with Discord stuff from high level.

  14. class DiscordShard extends Actor with ActorLogging with Timers

    The core actor that controls all the other used actors of AckCord

  15. trait EventHandler[F[_], G[_], A <: APIMessage] extends AnyRef

    A handler for a specific event type.

    A handler for a specific event type.

    A

    The API message type

  16. type FutureVectorRequest[A] = Future[Vector[A]]
  17. type GatewayLogin = Login.type
  18. type GatewayLogout = Logout.type
  19. type GatewaySettings = ackcord.gateway.GatewaySettings
  20. trait HasCache[F[_], A] extends AnyRef
  21. type Id[A] = A
  22. type JsonNull = ackcord.util.JsonNull.type
  23. type JsonOption[A] = ackcord.util.JsonOption[A]
  24. type JsonSome[A] = ackcord.util.JsonSome[A]
  25. type JsonUndefined = ackcord.util.JsonUndefined.type
  26. case class MemoryCacheSnapshot(botUser: @@[User, BotUser], dmChannelMap: SnowflakeMap[Channel, DMChannel], groupDmChannelMap: SnowflakeMap[Channel, GroupDMChannel], unavailableGuildMap: SnowflakeMap[Guild, UnavailableGuild], guildMap: SnowflakeMap[Guild, Guild], messageMap: SnowflakeMap[Channel, SnowflakeMap[Message, Message]], lastTypedMap: SnowflakeMap[Channel, SnowflakeMap[User, Instant]], userMap: SnowflakeMap[User, User], banMap: SnowflakeMap[Guild, SnowflakeMap[User, Ban]]) extends CacheSnapshotId with Product with Serializable

    Represents the cache at some point in time

  27. case class MiscCacheUpdate[Data](data: Data, handler: CacheHandler[Data]) extends CacheUpdate[Data] with Product with Serializable

    Any other event that updates the cache with it's data.

    Any other event that updates the cache with it's data.

    Data

    The data it contains.

    data

    The data.

    handler

    The handler to process the data of this event with.

  28. abstract class RawCommandHandler[F[_], G[_]] extends AnyRef

    A handler for all raw commands.

  29. type RequestHelper = ackcord.requests.RequestHelper
  30. class RequestPermissionException extends Exception
  31. trait RequestRunner[F[_], G[_]] extends AnyRef
  32. case class RequestSettings(parallelism: Int = 4, bufferSize: Int = 32, maxRetryCount: Int = 3, overflowStrategy: OverflowStrategy = OverflowStrategy.backpressure, maxAllowedWait: FiniteDuration = 2.minutes) extends Product with Serializable

    parallelism

    Parallelism to use for requests.

    bufferSize

    The buffer size to use for waiting requests.

    maxRetryCount

    The maximum amount of times a request will be retried. Only affects requests that uses retries.

    overflowStrategy

    The overflow strategy to use when the buffer is full.

    maxAllowedWait

    The max allowed wait time before giving up on a request.

  33. case class SeperateCommandsHelper[F[_]](commands: Commands[F], requests: RequestHelper) extends CommandsHelper[F] with Product with Serializable
  34. class SnowflakeMap[K, +V] extends AbstractMap[SnowflakeType[K], V] with Map[SnowflakeType[K], V] with MapLike[SnowflakeType[K], V, SnowflakeMap[K, V]]
  35. type SourceRequest[A] = Source[A, NotUsed]
  36. type Streamable[F[_]] = ackcord.util.Streamable[F]

Value Members

  1. val BotAuthentication: ackcord.requests.BotAuthentication.type
  2. val GatewayLogin: Login.type
  3. val GatewayLogout: Logout.type
  4. val GatewaySettings: ackcord.gateway.GatewaySettings.type
  5. val JsonNull: ackcord.util.JsonNull.type
  6. val JsonOption: ackcord.util.JsonOption.type
  7. val JsonSome: ackcord.util.JsonSome.type
  8. val JsonUndefined: ackcord.util.JsonUndefined.type
  9. val RequestHelper: ackcord.requests.RequestHelper.type
  10. val Streamable: ackcord.util.Streamable.type
  11. implicit def flowFunctorInstance[In, Mat]: Functor[[β$0$]Flow[In, β$0$, Mat]]
  12. implicit def sinkContravariantInstance[Mat]: Contravariant[[α$1$]Sink[α$1$, Mat]]
  13. implicit val sourceMonadInstance: MonadError[SourceRequest, Throwable] with Alternative[SourceRequest]
  14. implicit def sourceSyntax[A, M](source: Source[A, M]): SourceFlatmap[A, M]
  15. object APIMessage
  16. object AckCord
  17. object Cache extends Serializable
  18. object CacheSnapshot
  19. object CacheStreams
  20. object ClientSettings extends Serializable
  21. object DiscordShard extends FailFastCirceSupport
  22. object GatewayHandlerCache
  23. object HasCache
  24. object MusicManager
  25. object RequestRunner
  26. object ShardShutdownManager
  27. object SnowflakeMap

Inherited from AnyRef

Inherited from Any

Ungrouped