Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Sealed base type for Kord eventsΒ #904

@gdude2002

Description

@gdude2002

Currently, Kord events all extend the Event interface, which is open. This is good - it means that frameworks can combine their events with Kord's in their event handling systems trivially.

However, this also creates a problem - when using a when for type checking event objects, the compiler/IDE will be unable to generate an exhaustive list of conditionals. In the case of KordEx, which has functions like this to extract data from Kord events, this means it's very difficult for me to know about changes to Kord's event line up.

To fix this, I propose adding a sealed interface inherited by all Kord event types - perhaps named KordEvent. While this would not solve the problem of generic entity extraction, it would allow framework developers to quickly generate a full list of Kord event types when working with these when blocks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions