diff options
| author | Adelyn Breelove <[email protected]> | 2018-12-17 13:13:10 -0700 |
|---|---|---|
| committer | Adelyn Breelove <[email protected]> | 2018-12-17 13:13:10 -0700 |
| commit | 57df76de6441899b659e30c6a8e9d7572b85f7a0 (patch) | |
| tree | 3825d09337f03c447bb86ce66834b4fd39a8083b /lib/models/role.ml | |
| parent | Add a few sigs (diff) | |
| download | disml-57df76de6441899b659e30c6a8e9d7572b85f7a0.tar.xz disml-57df76de6441899b659e30c6a8e9d7572b85f7a0.zip | |
Some abstractions
Diffstat (limited to 'lib/models/role.ml')
| -rw-r--r-- | lib/models/role.ml | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/lib/models/role.ml b/lib/models/role.ml index 36b7d4b..10272a7 100644 --- a/lib/models/role.ml +++ b/lib/models/role.ml @@ -1,2 +1,25 @@ module Make(Http : S.Http) = struct + open Role_t + + let edit_role ~body role = Http.guild_role_edit role.guild_id role.id body + + let allow_mention role = + edit_role ~body:(`Assoc [("mentionable", `Bool true)]) role + + let delete role = Http.guild_role_remove role.guild_id role.id + + let disallow_mention role = + edit_role ~body:(`Assoc [("mentionable", `Bool false)]) role + + let hoist role = + edit_role ~body:(`Assoc [("hoist", `Bool true)]) role + + let set_colour ~colour role = + edit_role ~body:(`Assoc [("color", `Int colour)]) role + + let set_name ~name role = + edit_role ~body:(`Assoc [("name", `String name)]) role + + let unhoist role = + edit_role ~body:(`Assoc [("hoist", `Bool false)]) role end
\ No newline at end of file |