Replace state.rs, messages.rs by event_kinds.rs, content_enums.rs
This commit is contained in:
		
							parent
							
								
									aa7a54015c
								
							
						
					
					
						commit
						315ac55d46
					
				
							
								
								
									
										36
									
								
								src/content_enums.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								src/content_enums.rs
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,36 @@ | |||||||
|  | use ruma_events_macros::event_content_enum; | ||||||
|  | 
 | ||||||
|  | event_content_enum! { | ||||||
|  |     /// Any message event's content.
 | ||||||
|  |     name: AnyMessageEventContent, | ||||||
|  |     events: [ | ||||||
|  |         "m.call.answer", | ||||||
|  |         "m.call.invite", | ||||||
|  |         "m.call.hangup", | ||||||
|  |         "m.call.candidates", | ||||||
|  |         "m.sticker", | ||||||
|  |     ] | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | event_content_enum! { | ||||||
|  |     /// Amy state event's content.
 | ||||||
|  |     name: AnyStateEventContent, | ||||||
|  |     events: [ | ||||||
|  |         "m.room.aliases", | ||||||
|  |         "m.room.avatar", | ||||||
|  |         "m.room.canonical_alias", | ||||||
|  |         "m.room.create", | ||||||
|  |         "m.room.encryption", | ||||||
|  |         "m.room.guest_access", | ||||||
|  |         "m.room.history_visibility", | ||||||
|  |         "m.room.join_rules", | ||||||
|  |         "m.room.member", | ||||||
|  |         "m.room.name", | ||||||
|  |         "m.room.pinned_events", | ||||||
|  |         "m.room.power_levels", | ||||||
|  |         "m.room.server_acl", | ||||||
|  |         "m.room.third_party_invite", | ||||||
|  |         "m.room.tombstone", | ||||||
|  |         "m.room.topic", | ||||||
|  |     ] | ||||||
|  | } | ||||||
| @ -1,42 +1,38 @@ | |||||||
| //! An enum that represents any state event. A state event is represented by
 |  | ||||||
| //! a parameterized struct allowing more flexibility in whats being sent.
 |  | ||||||
| 
 |  | ||||||
| use std::{ | use std::{ | ||||||
|     convert::TryFrom, |     convert::TryFrom, | ||||||
|     time::{SystemTime, UNIX_EPOCH}, |     time::{SystemTime, UNIX_EPOCH}, | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| use js_int::UInt; | use js_int::UInt; | ||||||
|  | use ruma_events_macros::Event; | ||||||
| use ruma_identifiers::{EventId, RoomId, UserId}; | use ruma_identifiers::{EventId, RoomId, UserId}; | ||||||
| use serde::{ | use serde::{ | ||||||
|     ser::{Error, SerializeStruct}, |     ser::{Error, SerializeStruct}, | ||||||
|     Serialize, Serializer, |     Serialize, Serializer, | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| use crate::{RoomEventContent, StateEventContent, TryFromRaw, UnsignedData}; | use crate::{MessageEventContent, RoomEventContent, StateEventContent, TryFromRaw, UnsignedData}; | ||||||
| use ruma_events_macros::{event_content_enum, Event}; |  | ||||||
| 
 | 
 | ||||||
| event_content_enum! { | /// Message event.
 | ||||||
|     /// A state event.
 | #[derive(Clone, Debug, Event)] | ||||||
|     name: AnyStateEventContent, | pub struct MessageEvent<C: MessageEventContent> { | ||||||
|     events: [ |     /// Data specific to the event type.
 | ||||||
|         "m.room.aliases", |     pub content: C, | ||||||
|         "m.room.avatar", | 
 | ||||||
|         "m.room.canonical_alias", |     /// The globally unique event identifier for the user who sent the event.
 | ||||||
|         "m.room.create", |     pub event_id: EventId, | ||||||
|         "m.room.encryption", | 
 | ||||||
|         "m.room.guest_access", |     /// Contains the fully-qualified ID of the user who sent this event.
 | ||||||
|         "m.room.history_visibility", |     pub sender: UserId, | ||||||
|         "m.room.join_rules", | 
 | ||||||
|         "m.room.member", |     /// Timestamp in milliseconds on originating homeserver when this event was sent.
 | ||||||
|         "m.room.name", |     pub origin_server_ts: SystemTime, | ||||||
|         "m.room.pinned_events", | 
 | ||||||
|         "m.room.power_levels", |     /// The ID of the room associated with this event.
 | ||||||
|         "m.room.server_acl", |     pub room_id: RoomId, | ||||||
|         "m.room.third_party_invite", | 
 | ||||||
|         "m.room.tombstone", |     /// Additional key-value pairs not signed by the homeserver.
 | ||||||
|         "m.room.topic", |     pub unsigned: UnsignedData, | ||||||
|     ] |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /// State event.
 | /// State event.
 | ||||||
| @ -130,12 +130,12 @@ use serde_json::value::RawValue as RawJsonValue; | |||||||
| pub use ruma_serde::empty::Empty; | pub use ruma_serde::empty::Empty; | ||||||
| 
 | 
 | ||||||
| mod algorithm; | mod algorithm; | ||||||
|  | mod content_enums; | ||||||
| mod error; | mod error; | ||||||
|  | mod event_kinds; | ||||||
| mod event_type; | mod event_type; | ||||||
| mod from_raw; | mod from_raw; | ||||||
| mod json; | mod json; | ||||||
| mod message; |  | ||||||
| mod state; |  | ||||||
| #[doc(hidden)] // only public for external tests
 | #[doc(hidden)] // only public for external tests
 | ||||||
| pub mod util; | pub mod util; | ||||||
| 
 | 
 | ||||||
| @ -165,12 +165,12 @@ pub mod typing; | |||||||
| 
 | 
 | ||||||
| pub use self::{ | pub use self::{ | ||||||
|     algorithm::Algorithm, |     algorithm::Algorithm, | ||||||
|  |     content_enums::{AnyMessageEventContent, AnyStateEventContent}, | ||||||
|     error::{FromStrError, InvalidEvent, InvalidInput}, |     error::{FromStrError, InvalidEvent, InvalidInput}, | ||||||
|  |     event_kinds::{MessageEvent, StateEvent}, | ||||||
|     event_type::EventType, |     event_type::EventType, | ||||||
|     from_raw::{FromRaw, TryFromRaw}, |     from_raw::{FromRaw, TryFromRaw}, | ||||||
|     json::EventJson, |     json::EventJson, | ||||||
|     message::{AnyMessageEventContent, MessageEvent}, |  | ||||||
|     state::{AnyStateEventContent, StateEvent}, |  | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| /// Extra information about an event that is not incorporated into the event's
 | /// Extra information about an event that is not incorporated into the event's
 | ||||||
|  | |||||||
| @ -1,51 +0,0 @@ | |||||||
| //! An enum that represents any message event. A message event is represented by
 |  | ||||||
| //! a parameterized struct allowing more flexibility in whats being sent.
 |  | ||||||
| 
 |  | ||||||
| use std::{ |  | ||||||
|     convert::TryFrom, |  | ||||||
|     time::{SystemTime, UNIX_EPOCH}, |  | ||||||
| }; |  | ||||||
| 
 |  | ||||||
| use js_int::UInt; |  | ||||||
| use ruma_identifiers::{EventId, RoomId, UserId}; |  | ||||||
| use serde::{ |  | ||||||
|     ser::{Error, SerializeStruct}, |  | ||||||
|     Serialize, Serializer, |  | ||||||
| }; |  | ||||||
| 
 |  | ||||||
| use crate::{MessageEventContent, RoomEventContent, UnsignedData}; |  | ||||||
| use ruma_events_macros::{event_content_enum, Event}; |  | ||||||
| 
 |  | ||||||
| event_content_enum! { |  | ||||||
|     /// A message event.
 |  | ||||||
|     name: AnyMessageEventContent, |  | ||||||
|     events: [ |  | ||||||
|         "m.call.answer", |  | ||||||
|         "m.call.invite", |  | ||||||
|         "m.call.hangup", |  | ||||||
|         "m.call.candidates", |  | ||||||
|         "m.sticker", |  | ||||||
|     ] |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| /// Message event.
 |  | ||||||
| #[derive(Clone, Debug, Event)] |  | ||||||
| pub struct MessageEvent<C: MessageEventContent> { |  | ||||||
|     /// Data specific to the event type.
 |  | ||||||
|     pub content: C, |  | ||||||
| 
 |  | ||||||
|     /// The globally unique event identifier for the user who sent the event.
 |  | ||||||
|     pub event_id: EventId, |  | ||||||
| 
 |  | ||||||
|     /// Contains the fully-qualified ID of the user who sent this event.
 |  | ||||||
|     pub sender: UserId, |  | ||||||
| 
 |  | ||||||
|     /// Timestamp in milliseconds on originating homeserver when this event was sent.
 |  | ||||||
|     pub origin_server_ts: SystemTime, |  | ||||||
| 
 |  | ||||||
|     /// The ID of the room associated with this event.
 |  | ||||||
|     pub room_id: RoomId, |  | ||||||
| 
 |  | ||||||
|     /// Additional key-value pairs not signed by the homeserver.
 |  | ||||||
|     pub unsigned: UnsignedData, |  | ||||||
| } |  | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user