reifydb_core/event/
catalog.rs

1// Copyright (c) reifydb.com 2025
2// This file is licensed under the AGPL-3.0-or-later, see license.md file
3
4use crate::{
5	impl_event,
6	interface::{DictionaryDef, NamespaceDef, RingBufferDef, TableDef, ViewDef},
7	row::Row,
8};
9
10#[derive(Clone)]
11pub struct TableInsertedEvent {
12	pub table: TableDef,
13	pub row: Row,
14}
15
16impl_event!(TableInsertedEvent);
17
18#[derive(Clone)]
19pub struct NamespaceCreatedEvent {
20	pub namespace: NamespaceDef,
21}
22
23impl_event!(NamespaceCreatedEvent);
24
25#[derive(Clone)]
26pub struct TableCreatedEvent {
27	pub table: TableDef,
28}
29
30impl_event!(TableCreatedEvent);
31
32#[derive(Clone)]
33pub struct ViewCreatedEvent {
34	pub view: ViewDef,
35}
36
37impl_event!(ViewCreatedEvent);
38
39#[derive(Clone)]
40pub struct RingBufferCreatedEvent {
41	pub ringbuffer: RingBufferDef,
42}
43
44impl_event!(RingBufferCreatedEvent);
45
46#[derive(Clone)]
47pub struct DictionaryCreatedEvent {
48	pub dictionary: DictionaryDef,
49}
50
51impl_event!(DictionaryCreatedEvent);