mirror of
https://github.com/matrix-construct/construct
synced 2024-10-04 14:48:56 +02:00
ircd:Ⓜ️ Add some object semantics/restrictions.
This commit is contained in:
parent
3d216fda84
commit
d6ad4ce45e
2 changed files with 12 additions and 2 deletions
|
@ -102,6 +102,8 @@ struct ircd::m::room
|
||||||
:room_id{room_id}
|
:room_id{room_id}
|
||||||
,event_id{event_id}
|
,event_id{event_id}
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
room() = default;
|
||||||
};
|
};
|
||||||
|
|
||||||
/// Interface to room messages
|
/// Interface to room messages
|
||||||
|
@ -141,6 +143,9 @@ struct ircd::m::room::messages
|
||||||
messages(const m::room &room, const uint64_t &depth);
|
messages(const m::room &room, const uint64_t &depth);
|
||||||
messages(const m::room &room, const event::id &);
|
messages(const m::room &room, const event::id &);
|
||||||
messages(const m::room &room);
|
messages(const m::room &room);
|
||||||
|
messages() = default;
|
||||||
|
messages(const messages &) = delete;
|
||||||
|
messages &operator=(const messages &) = delete;
|
||||||
};
|
};
|
||||||
|
|
||||||
/// Interface to room state.
|
/// Interface to room state.
|
||||||
|
@ -187,6 +192,9 @@ struct ircd::m::room::state
|
||||||
const m::state::id &refresh();
|
const m::state::id &refresh();
|
||||||
|
|
||||||
state(const m::room &);
|
state(const m::room &);
|
||||||
|
state() = default;
|
||||||
|
state(const state &) = delete;
|
||||||
|
state &operator=(const state &) = delete;
|
||||||
};
|
};
|
||||||
|
|
||||||
/// Interface to the members of a room.
|
/// Interface to the members of a room.
|
||||||
|
@ -204,7 +212,7 @@ struct ircd::m::room::members
|
||||||
void for_each(const string_view &membership, const event::closure &view) const;
|
void for_each(const string_view &membership, const event::closure &view) const;
|
||||||
void for_each(const event::closure &view) const;
|
void for_each(const event::closure &view) const;
|
||||||
|
|
||||||
members(m::room room)
|
members(const m::room &room)
|
||||||
:room{room}
|
:room{room}
|
||||||
{}
|
{}
|
||||||
};
|
};
|
||||||
|
@ -226,7 +234,7 @@ struct ircd::m::room::origins
|
||||||
bool test(const closure_bool &view) const;
|
bool test(const closure_bool &view) const;
|
||||||
void for_each(const closure &view) const;
|
void for_each(const closure &view) const;
|
||||||
|
|
||||||
origins(m::room room)
|
origins(const m::room &room)
|
||||||
:room{room}
|
:room{room}
|
||||||
{}
|
{}
|
||||||
};
|
};
|
||||||
|
|
|
@ -35,4 +35,6 @@ struct ircd::m::user
|
||||||
user(const id &user_id)
|
user(const id &user_id)
|
||||||
:user_id{user_id}
|
:user_id{user_id}
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
user() = default;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue