diff options
| author | Adelyn Breedlove <[email protected]> | 2018-11-18 19:05:53 +0000 |
|---|---|---|
| committer | Adelyn Breedlove <[email protected]> | 2018-11-18 19:05:53 +0000 |
| commit | 84d98bd3b227ac2bba5163d4e616d73e355494ee (patch) | |
| tree | 7ec65e89673ad8d9e70b12482206e27e9fa77704 /lib/model/user.ml | |
| parent | Merge branch 'dev' into 'master' (diff) | |
| parent | Event dispatch and client abstraction (diff) | |
| download | disml-84d98bd3b227ac2bba5163d4e616d73e355494ee.tar.xz disml-84d98bd3b227ac2bba5163d4e616d73e355494ee.zip | |
Merge branch 'dev' into 'master'
Add event dispatch and the Client module
See merge request Mishio595/disml!4
Diffstat (limited to 'lib/model/user.ml')
| -rw-r--r-- | lib/model/user.ml | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/lib/model/user.ml b/lib/model/user.ml new file mode 100644 index 0000000..182ea6a --- /dev/null +++ b/lib/model/user.ml @@ -0,0 +1,26 @@ +type t = { + id: int; + username: string; + discriminator: string; + avatar: string option; + bot: bool; +} + +let from_json term = + let module J = Yojson.Basic.Util in + let id = J.member "id" term + |> J.to_string + |> int_of_string + in + let username = J.member "username" term + |> J.to_string in + let discriminator = J.member "discriminator" term + |> J.to_string in + let avatar = J.member "avatar" term + |> J.to_string_option in + let bot = J.member "bot" term + |> J.to_bool in + { id; username; discriminator; avatar; bot; } + +let tag user = + user.username ^ user.discriminator |