diff options
| author | Matias Goldfeld <[email protected]> | 2021-02-07 20:21:47 -0500 |
|---|---|---|
| committer | Matias Goldfeld <[email protected]> | 2021-02-07 20:21:47 -0500 |
| commit | b2f081fff12093a7d3434859ebd621608dde6c7d (patch) | |
| tree | 5ea4f7d6ff82727d62b01fb2d234a4f8ab66aa2b /lib/models/guild | |
| parent | Removed generated version numbers (diff) | |
| download | disml-origin/HEAD.tar.xz disml-origin/HEAD.zip | |
Reverted earlier changes for goodHEADorigin/masterorigin/HEADmaster
Diffstat (limited to 'lib/models/guild')
| -rw-r--r-- | lib/models/guild/ban_t.ml | 2 | ||||
| -rw-r--r-- | lib/models/guild/ban_t.mli | 2 | ||||
| -rw-r--r-- | lib/models/guild/guild.ml | 10 | ||||
| -rw-r--r-- | lib/models/guild/guild_t.ml | 6 | ||||
| -rw-r--r-- | lib/models/guild/guild_t.mli | 6 | ||||
| -rw-r--r-- | lib/models/guild/member.ml | 16 | ||||
| -rw-r--r-- | lib/models/guild/member_t.ml | 10 | ||||
| -rw-r--r-- | lib/models/guild/member_t.mli | 10 | ||||
| -rw-r--r-- | lib/models/guild/role_t.ml | 4 | ||||
| -rw-r--r-- | lib/models/guild/role_t.mli | 4 |
10 files changed, 36 insertions, 34 deletions
diff --git a/lib/models/guild/ban_t.ml b/lib/models/guild/ban_t.ml index 518b93e..2ebc91d 100644 --- a/lib/models/guild/ban_t.ml +++ b/lib/models/guild/ban_t.ml @@ -3,4 +3,4 @@ open Core type t = { reason: string option [@default None]; user: User_t.t; -} [@@deriving sexp, yojson]
\ No newline at end of file +} [@@deriving sexp, yojson { strict = false; exn = true }]
\ No newline at end of file diff --git a/lib/models/guild/ban_t.mli b/lib/models/guild/ban_t.mli index 37e5cfa..63d8ca8 100644 --- a/lib/models/guild/ban_t.mli +++ b/lib/models/guild/ban_t.mli @@ -1,4 +1,4 @@ type t = {
reason: string option; (** The reason for the ban. *)
user: User_t.t; (** The banned user. *)
-} [@@deriving sexp, yojson]
\ No newline at end of file +} [@@deriving sexp, yojson { exn = true }]
\ No newline at end of file diff --git a/lib/models/guild/guild.ml b/lib/models/guild/guild.ml index f67d5c2..95485a4 100644 --- a/lib/models/guild/guild.ml +++ b/lib/models/guild/guild.ml @@ -89,7 +89,7 @@ let request_members guild = Http.get_members (get_id guild)
let set_afk_channel ~id guild = Http.edit_guild (get_id guild) (`Assoc [
- ("afk_channel_id", `Intlit (Int64.to_string id));
+ ("afk_channel_id", `Int id);
])
let set_afk_timeout ~timeout guild = Http.edit_guild (get_id guild) (`Assoc [
@@ -113,14 +113,16 @@ let unban_user ~id ?reason guild = let get_member ~(id:User_id_t.t) guild =
match List.find ~f:(fun m -> User_id.compare m.user.id id = 0) guild.members with
| Some m -> Deferred.Or_error.return m
- | None -> Http.get_member (get_id guild) (User_id.get_id id)
+ | None ->
+ let `User_id id = id in
+ Http.get_member (get_id guild) id
let get_channel ~(id:Channel_id_t.t) guild =
let `Channel_id id = id in
- match List.find ~f:(fun c -> Int64.(Channel_t.get_id c = id)) guild.channels with
+ match List.find ~f:(fun c -> Channel_t.get_id c = id) guild.channels with
| Some c -> Deferred.Or_error.return c
| None -> Http.get_channel id
(* TODO add HTTP fallback *)
let get_role ~(id:Role_id.t) guild =
- List.find ~f:(fun r -> Int64.(Role_id.get_id r.id = Role_id.get_id id)) guild.roles
+ List.find ~f:(fun r -> Role_id.get_id r.id = Role_id.get_id id) guild.roles
diff --git a/lib/models/guild/guild_t.ml b/lib/models/guild/guild_t.ml index 4445ce2..afe3d19 100644 --- a/lib/models/guild/guild_t.ml +++ b/lib/models/guild/guild_t.ml @@ -3,7 +3,7 @@ open Core type unavailable = {
id: Guild_id_t.t;
unavailable: bool [@default false];
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { strict = false; exn = true }]
type pre = {
id: Guild_id_t.t;
@@ -31,7 +31,7 @@ type pre = { member_count: int option [@default None];
members: Member_t.member list [@default []];
channels: Channel_t.channel_wrapper list [@default []];
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { strict = false; exn = true }]
type t = {
id: Guild_id_t.t;
@@ -59,7 +59,7 @@ type t = { member_count: int option [@default None];
members: Member_t.t list;
channels: Channel_t.t list;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { strict = false; exn = true }]
let wrap ({id;name;icon;splash;owner_id;region;afk_channel_id;afk_timeout;embed_enabled;embed_channel_id;verification_level;default_message_notifications;explicit_content_filter;roles;emojis;features;mfa_level;application_id;widget_enabled;widget_channel_id;system_channel_id;large;member_count;members;channels}:pre) =
let `Guild_id id = id in
diff --git a/lib/models/guild/guild_t.mli b/lib/models/guild/guild_t.mli index 42a0669..7327be9 100644 --- a/lib/models/guild/guild_t.mli +++ b/lib/models/guild/guild_t.mli @@ -1,7 +1,7 @@ type unavailable = {
id: Guild_id_t.t;
unavailable: bool;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { exn = true }]
(** Used internally. *)
type pre = {
@@ -30,7 +30,7 @@ type pre = { member_count: int option;
members: Member_t.member list;
channels: Channel_t.channel_wrapper list;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { exn = true }]
(** A Guild object *)
type t = {
@@ -59,7 +59,7 @@ type t = { member_count: int option; (** Total number of members in the guild. *)
members: Member_t.t list; (** List of guild members. *)
channels: Channel_t.t list; (** List of guild channels. *)
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { exn = true }]
val wrap : pre -> t
val get_id : t -> Snowflake.t
\ No newline at end of file diff --git a/lib/models/guild/member.ml b/lib/models/guild/member.ml index e680ecc..c5a7455 100644 --- a/lib/models/guild/member.ml +++ b/lib/models/guild/member.ml @@ -2,19 +2,19 @@ include Member_t let add_role ~(role:Role_t.t) member =
let `Guild_id guild_id = member.guild_id in
- let user_id = User_id.get_id member.user.id in
+ let `User_id user_id = member.user.id in
let `Role_id role_id = role.id in
Http.add_member_role guild_id user_id role_id
let remove_role ~(role:Role_t.t) member =
let `Guild_id guild_id = member.guild_id in
- let user_id = User_id.get_id member.user.id in
+ let `User_id user_id = member.user.id in
let `Role_id role_id = role.id in
Http.remove_member_role guild_id user_id role_id
let ban ?(reason="") ?(days=0) member =
let `Guild_id guild_id = member.guild_id in
- let user_id = User_id.get_id member.user.id in
+ let `User_id user_id = member.user.id in
Http.guild_ban_add guild_id user_id (`Assoc [
("delete-message-days", `Int days);
("reason", `String reason);
@@ -22,7 +22,7 @@ let ban ?(reason="") ?(days=0) member = let kick ?reason member =
let `Guild_id guild_id = member.guild_id in
- let user_id = User_id.get_id member.user.id in
+ let `User_id user_id = member.user.id in
let payload = match reason with
| Some r -> `Assoc [("reason", `String r)]
| None -> `Null
@@ -30,28 +30,28 @@ let kick ?reason member = let mute member =
let `Guild_id guild_id = member.guild_id in
- let user_id = User_id.get_id member.user.id in
+ let `User_id user_id = member.user.id in
Http.edit_member guild_id user_id (`Assoc [
("mute", `Bool true);
])
let deafen member =
let `Guild_id guild_id = member.guild_id in
- let user_id = User_id.get_id member.user.id in
+ let `User_id user_id = member.user.id in
Http.edit_member guild_id user_id (`Assoc [
("deaf", `Bool true);
])
let unmute member =
let `Guild_id guild_id = member.guild_id in
- let user_id = User_id.get_id member.user.id in
+ let `User_id user_id = member.user.id in
Http.edit_member guild_id user_id (`Assoc [
("mute", `Bool false);
])
let undeafen member =
let `Guild_id guild_id = member.guild_id in
- let user_id = User_id.get_id member.user.id in
+ let `User_id user_id = member.user.id in
Http.edit_member guild_id user_id (`Assoc [
("deaf", `Bool false);
])
diff --git a/lib/models/guild/member_t.ml b/lib/models/guild/member_t.ml index 0724e54..4e01b9a 100644 --- a/lib/models/guild/member_t.ml +++ b/lib/models/guild/member_t.ml @@ -6,7 +6,7 @@ type partial_member = { joined_at: string;
deaf: bool;
mute: bool;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { strict = false; exn = true }]
type member = {
nick: string option [@default None];
@@ -15,19 +15,19 @@ type member = { deaf: bool;
mute: bool;
user: User_t.t;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { strict = false; exn = true }]
type member_wrapper = {
guild_id: Guild_id_t.t;
user: User_t.t;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { strict = false; exn = true }]
type member_update = {
guild_id: Guild_id_t.t;
roles: Role_id.t list [@default []];
user: User_t.t;
nick: string option [@default None];
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { strict = false; exn = true }]
type t = {
nick: string option [@default None];
@@ -37,7 +37,7 @@ type t = { mute: bool;
user: User_t.t;
guild_id: Guild_id_t.t;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { strict = false; exn = true }]
let wrap ~guild_id ({nick;roles;joined_at;deaf;mute;user}:member) =
{nick;roles;joined_at;deaf;mute;user;guild_id = `Guild_id guild_id}
\ No newline at end of file diff --git a/lib/models/guild/member_t.mli b/lib/models/guild/member_t.mli index 170504f..abfc1af 100644 --- a/lib/models/guild/member_t.mli +++ b/lib/models/guild/member_t.mli @@ -4,7 +4,7 @@ type partial_member = { joined_at: string;
deaf: bool;
mute: bool;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { exn = true }]
type member = {
nick: string option;
@@ -13,19 +13,19 @@ type member = { deaf: bool;
mute: bool;
user: User_t.t;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { exn = true }]
type member_wrapper = {
guild_id: Guild_id_t.t;
user: User_t.t;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { exn = true }]
type member_update = {
guild_id: Guild_id_t.t;
roles: Role_id.t list;
user: User_t.t;
nick: string option;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { exn = true }]
(** A member object. *)
type t = {
@@ -36,6 +36,6 @@ type t = { mute: bool; (** Whether the user is muted. *)
user: User_t.t; (** The underlying user object for the member. *)
guild_id: Guild_id_t.t; (** The guild ID in which the member exists. *)
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { exn = true }]
val wrap : guild_id:Snowflake.t -> member -> t
\ No newline at end of file diff --git a/lib/models/guild/role_t.ml b/lib/models/guild/role_t.ml index 6f27483..2927c20 100644 --- a/lib/models/guild/role_t.ml +++ b/lib/models/guild/role_t.ml @@ -9,7 +9,7 @@ type role = { permissions: Permissions.t;
managed: bool;
mentionable: bool;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { strict = false; exn = true }]
type t = {
id: Role_id.t;
@@ -21,7 +21,7 @@ type t = { managed: bool;
mentionable: bool;
guild_id: Guild_id_t.t;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { strict = false; exn = true }]
let wrap ~guild_id ({id;name;colour;hoist;position;permissions;managed;mentionable}:role) =
{id;name;colour;hoist;position;permissions;managed;mentionable;guild_id = `Guild_id guild_id}
\ No newline at end of file diff --git a/lib/models/guild/role_t.mli b/lib/models/guild/role_t.mli index 630ba53..98c1559 100644 --- a/lib/models/guild/role_t.mli +++ b/lib/models/guild/role_t.mli @@ -8,7 +8,7 @@ type role = { permissions: Permissions.t;
managed: bool;
mentionable: bool;
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { exn = true }]
(** A role object. *)
type t = {
@@ -21,7 +21,7 @@ type t = { managed: bool; (** Whether the guild is managed by an integration. *)
mentionable: bool; (** Whether the role can be mentioned. *)
guild_id: Guild_id_t.t; (** The guild ID this role belongs to. *)
-} [@@deriving sexp, yojson]
+} [@@deriving sexp, yojson { exn = true }]
(** Convenience method to produce {!t} from {!role} and a snowflake. *)
val wrap : guild_id:Snowflake.t -> role -> t
\ No newline at end of file |