spicedb_client/reader/
schema.rs

1use spicedb_grpc::authzed::api::v1::{ReadSchemaResponse, WriteSchemaResponse, ZedToken};
2
3pub trait ReadSchemaResponseReader {
4    fn schema_text(&self) -> &str;
5
6    fn read_at(&self) -> Option<&str>;
7}
8
9impl ReadSchemaResponseReader for ReadSchemaResponse {
10    fn schema_text(&self) -> &str {
11        self.schema_text.as_str()
12    }
13
14    fn read_at(&self) -> Option<&str> {
15        self.read_at.as_ref().map(ZedTokenReader::token)
16    }
17}
18
19pub trait WriteSchemaResponseReader {
20    fn written_at(&self) -> Option<&str>;
21}
22
23impl WriteSchemaResponseReader for WriteSchemaResponse {
24    fn written_at(&self) -> Option<&str> {
25        self.written_at.as_ref().map(ZedTokenReader::token)
26    }
27}
28
29pub trait ZedTokenReader {
30    fn token(&self) -> &str;
31}
32
33impl ZedTokenReader for ZedToken {
34    fn token(&self) -> &str {
35        &self.token
36    }
37}