Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor(model): abstract null boolean visitor #2032

Merged
merged 2 commits into from
Jan 6, 2023

Conversation

zeylahellyer
Copy link
Member

Abstract the RoleTags::premium_subscriber null boolean visitor to the visitor module. Work is being done on adding a new field that functions exactly like RoleTags::premium_subscriber, where a missing field means false and a null value means true. It's best to abstract the visitor built for the field so it can be re-used elsewhere.

Abstract the `RoleTags::premium_subscriber` null boolean visitor to the
visitor module. Work is being done on adding a new field that functions
exactly like `RoleTags::premium_subscriber`, where a missing field means
false and a null value means true. It's best to abstract the visitor
built for the field so it can be re-used elsewhere.
@github-actions github-actions bot added c-model Affects the model crate t-refactor Refactors APIs or code. labels Jan 5, 2023
zeylahellyer added a commit that referenced this pull request Jan 5, 2023
Add support for guild role subscriptions. This involves:

- a new `RoleSubscriptionPurchase` variant on `MessageType`
- four new guild features:
  - `CreatorMonetizableProvisional`
  - `CreatorStorePage`
  - `RoleSubscriptionsAvailableForPurchase`
  - `RoleSubscriptionsEnabled`
- a new `GuildSubscription` variant on `GuildIntegrationType`
- two new role tag fields:
  - `available_for_purchase` (bool)
  - `subscription_listing_id` (optional snowflake)

Depends on PR #2030 since it makes `GuildIntegrationType` into an enum
which this adds a variant to, is related to #2032 since it abstracts the
optional null boolean, and relates to #2033 since it reworks tests this
adds to.

API docs:
discord/discord-api-docs@e003051

Closes #2027.
zeylahellyer added a commit that referenced this pull request Jan 5, 2023
Add support for guild role subscriptions. This involves:

- a new `RoleSubscriptionPurchase` variant on `MessageType`
- four new guild features:
  - `CreatorMonetizableProvisional`
  - `CreatorStorePage`
  - `RoleSubscriptionsAvailableForPurchase`
  - `RoleSubscriptionsEnabled`
- a new `GuildSubscription` variant on `GuildIntegrationType`
- two new role tag fields:
  - `available_for_purchase` (bool)
  - `subscription_listing_id` (optional snowflake)

Relates to #2032 since it abstracts the optional null boolean, and
relates to #2033 since it reworks tests this adds to.

API docs:
discord/discord-api-docs@e003051

Closes #2027.
zeylahellyer added a commit that referenced this pull request Jan 5, 2023
Add support for guild role subscriptions. This involves:

- a new `RoleSubscriptionPurchase` variant on `MessageType`
- four new guild features:
  - `CreatorMonetizableProvisional`
  - `CreatorStorePage`
  - `RoleSubscriptionsAvailableForPurchase`
  - `RoleSubscriptionsEnabled`
- a new `GuildSubscription` variant on `GuildIntegrationType`
- two new role tag fields:
  - `available_for_purchase` (bool)
  - `subscription_listing_id` (optional snowflake)

Relates to #2032 since it abstracts the optional null boolean, and
relates to #2033 since it reworks tests this adds to.

API docs:
discord/discord-api-docs@e003051

Closes #2027.
@7596ff 7596ff merged commit 461a01e into main Jan 6, 2023
@7596ff 7596ff deleted the zeyla/refactor-model-null-booleans branch January 6, 2023 23:10
7596ff pushed a commit that referenced this pull request Jan 17, 2023
Add support for guild role subscriptions. This involves:

- a new `RoleSubscriptionPurchase` variant on `MessageType`
- four new guild features:
  - `CreatorMonetizableProvisional`
  - `CreatorStorePage`
  - `RoleSubscriptionsAvailableForPurchase`
  - `RoleSubscriptionsEnabled`
- a new `GuildSubscription` variant on `GuildIntegrationType`
- two new role tag fields:
  - `available_for_purchase` (bool)
  - `subscription_listing_id` (optional snowflake)

Relates to #2032 since it abstracts the optional null boolean, and
relates to #2033 since it reworks tests this adds to.

Closes #2027.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c-model Affects the model crate t-refactor Refactors APIs or code.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants