rust_pgdatadiff/diff/sequence/query/input/mod.rs
1use crate::diff::sequence::query::sequence_types::SequenceName;
2use crate::diff::types::SchemaName;
3
4/// Represents the input for querying the sequence names for a schema.
5pub struct QueryAllSequencesInput(SchemaName);
6
7impl QueryAllSequencesInput {
8 /// Creates a new `QueryAllSequencesInput` with the given schema name.
9 ///
10 /// # Arguments
11 ///
12 /// * `schema_name` - The name of the schema to query.
13 ///
14 /// # Returns
15 ///
16 /// A new `QueryAllSequencesInput` instance.
17 pub fn new(schema_name: SchemaName) -> Self {
18 Self(schema_name)
19 }
20
21 /// Returns the schema name.
22 ///
23 /// # Returns
24 ///
25 /// A reference to the schema name.
26 pub fn schema_name(self) -> SchemaName {
27 self.0
28 }
29}
30
31/// Represents the input for querying the last values of a sequence.
32pub struct QueryLastValuesInput(SchemaName, SequenceName);
33
34impl QueryLastValuesInput {
35 /// Creates a new `QueryLastValuesInput` with the given sequence name.
36 ///
37 /// # Arguments
38 ///
39 /// * `sequence_name` - The name of the sequence to query.
40 ///
41 /// # Returns
42 ///
43 /// A new `QueryLastValuesInput` instance.
44 pub fn new(schema_name: SchemaName, sequence_name: SequenceName) -> Self {
45 Self(schema_name, sequence_name)
46 }
47
48 /// Returns the schema name.
49 ///
50 /// # Returns
51 ///
52 /// A reference to the schema name.
53 pub fn schema_name(&self) -> &SchemaName {
54 &self.0
55 }
56
57 /// Returns the sequence name.
58 ///
59 /// # Returns
60 ///
61 /// A reference to the sequence name.
62 pub fn sequence_name(&self) -> &SequenceName {
63 &self.1
64 }
65}