Made addition require document name.
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 1s
Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 1s
This commit is contained in:
parent
9dbaaceb80
commit
ed2a303d1c
@ -5,16 +5,24 @@ use uuid::Uuid;
|
|||||||
#[derive(Clone, Debug)]
|
#[derive(Clone, Debug)]
|
||||||
pub struct Addition {
|
pub struct Addition {
|
||||||
data: RequestData,
|
data: RequestData,
|
||||||
|
doc_name: NameType,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Addition {
|
impl Addition {
|
||||||
pub fn new() -> Self {
|
pub fn new<NT>(name: NT) -> Self
|
||||||
|
where
|
||||||
|
NT: Into<NameType>,
|
||||||
|
{
|
||||||
Self {
|
Self {
|
||||||
data: RequestData::new(),
|
data: RequestData::new(),
|
||||||
|
doc_name: name.into(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[allow(dead_code)]
|
pub fn doc_name(&self) -> NameType {
|
||||||
|
self.doc_name.clone()
|
||||||
|
}
|
||||||
|
|
||||||
pub fn add_field<NT, CV>(&mut self, name: NT, field: CV)
|
pub fn add_field<NT, CV>(&mut self, name: NT, field: CV)
|
||||||
where
|
where
|
||||||
CV: Into<CalcValue>,
|
CV: Into<CalcValue>,
|
||||||
@ -33,9 +41,18 @@ mod additions {
|
|||||||
use super::*;
|
use super::*;
|
||||||
use crate::name::Name;
|
use crate::name::Name;
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn is_default_addition_empty() {
|
||||||
|
let doc_name = Name::english(Uuid::new_v4().to_string().as_str());
|
||||||
|
let add = Addition::new(doc_name.clone());
|
||||||
|
assert_eq!(add.doc_name(), doc_name.into());
|
||||||
|
assert_eq!(add.iter().count(), 0);
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn can_add_static_string() {
|
fn can_add_static_string() {
|
||||||
let mut add = Addition::new();
|
let doc_name = Name::english(Uuid::new_v4().to_string().as_str());
|
||||||
|
let mut add = Addition::new(doc_name);
|
||||||
let name = Name::english(Uuid::new_v4().to_string().as_str());
|
let name = Name::english(Uuid::new_v4().to_string().as_str());
|
||||||
let ntype: NameType = name.clone().into();
|
let ntype: NameType = name.clone().into();
|
||||||
let data = Uuid::new_v4().to_string();
|
let data = Uuid::new_v4().to_string();
|
||||||
@ -55,7 +72,8 @@ mod additions {
|
|||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn can_add_uuid() {
|
fn can_add_uuid() {
|
||||||
let mut add = Addition::new();
|
let doc_name = Name::english(Uuid::new_v4().to_string().as_str());
|
||||||
|
let mut add = Addition::new(doc_name);
|
||||||
let name = Name::english(Uuid::new_v4().to_string().as_str());
|
let name = Name::english(Uuid::new_v4().to_string().as_str());
|
||||||
let ntype: NameType = name.clone().into();
|
let ntype: NameType = name.clone().into();
|
||||||
let data = Uuid::new_v4();
|
let data = Uuid::new_v4();
|
||||||
|
|||||||
@ -907,7 +907,7 @@ mod document_files {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn populate(&self, data: Vec<Field>) {
|
fn populate(&self, data: Vec<Field>) {
|
||||||
let mut add = Addition::new();
|
let mut add = Addition::new(self.doc_name());
|
||||||
let mut count = 0;
|
let mut count = 0;
|
||||||
for item in data.iter() {
|
for item in data.iter() {
|
||||||
add.add_field(
|
add.add_field(
|
||||||
@ -968,9 +968,9 @@ mod document_files {
|
|||||||
test_doc.start(standard_paths());
|
test_doc.start(standard_paths());
|
||||||
let queue = test_doc.get_queue();
|
let queue = test_doc.get_queue();
|
||||||
let msg_actions = [
|
let msg_actions = [
|
||||||
MsgAction::Addition(Addition::new()),
|
MsgAction::Addition(Addition::new(name.clone())),
|
||||||
MsgAction::Delete(Delete::new(Query::internal())),
|
MsgAction::Delete(Delete::new(Query::internal())),
|
||||||
MsgAction::Query(Query::internal().into()),
|
MsgAction::Query(Query::new(name.clone())),
|
||||||
MsgAction::Show,
|
MsgAction::Show,
|
||||||
MsgAction::Update(Update::new(Query::internal())),
|
MsgAction::Update(Update::new(Query::internal())),
|
||||||
];
|
];
|
||||||
@ -1019,9 +1019,9 @@ mod document_files {
|
|||||||
queue.send(setup);
|
queue.send(setup);
|
||||||
test_doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
test_doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
||||||
let msg_actions = [
|
let msg_actions = [
|
||||||
MsgAction::Addition(Addition::new()),
|
MsgAction::Addition(Addition::new(alt.clone())),
|
||||||
MsgAction::Create(DocDef::new(name.clone())),
|
MsgAction::Create(DocDef::new(name.clone())),
|
||||||
MsgAction::Delete(Delete::new(Query::internal())),
|
MsgAction::Delete(Delete::new(Query::new(alt.clone()))),
|
||||||
MsgAction::Query(Query::internal().into()),
|
MsgAction::Query(Query::internal().into()),
|
||||||
MsgAction::Show,
|
MsgAction::Show,
|
||||||
MsgAction::Update(Update::new(Query::internal())),
|
MsgAction::Update(Update::new(Query::internal())),
|
||||||
@ -1103,7 +1103,7 @@ mod document_files {
|
|||||||
Include::Just(Action::OnAddition),
|
Include::Just(Action::OnAddition),
|
||||||
)];
|
)];
|
||||||
test_doc.start(routes);
|
test_doc.start(routes);
|
||||||
let mut add = Addition::new();
|
let mut add = Addition::new(doc_name.clone());
|
||||||
add.add_field(field_name.clone(), data.clone());
|
add.add_field(field_name.clone(), data.clone());
|
||||||
let msg = Message::new(doc_name.clone(), add);
|
let msg = Message::new(doc_name.clone(), add);
|
||||||
queue.send(msg.clone());
|
queue.send(msg.clone());
|
||||||
@ -1229,7 +1229,7 @@ mod document_files {
|
|||||||
let mut test_doc: TestDocument = docdef.clone().into();
|
let mut test_doc: TestDocument = docdef.clone().into();
|
||||||
test_doc.start(standard_paths());
|
test_doc.start(standard_paths());
|
||||||
let queue = test_doc.get_queue();
|
let queue = test_doc.get_queue();
|
||||||
let mut new_doc = Addition::new();
|
let mut new_doc = Addition::new(doc_name.clone());
|
||||||
new_doc.add_field(name.clone(), data.clone());
|
new_doc.add_field(name.clone(), data.clone());
|
||||||
let testing = |msg: Message| {
|
let testing = |msg: Message| {
|
||||||
queue.send(msg.clone());
|
queue.send(msg.clone());
|
||||||
@ -1267,7 +1267,7 @@ mod document_files {
|
|||||||
let queue = test_doc.get_queue();
|
let queue = test_doc.get_queue();
|
||||||
let count = 5;
|
let count = 5;
|
||||||
for i in 0..count {
|
for i in 0..count {
|
||||||
let mut new_doc = Addition::new();
|
let mut new_doc = Addition::new(doc_name.clone());
|
||||||
new_doc.add_field(name.clone(), i);
|
new_doc.add_field(name.clone(), i);
|
||||||
queue.send(Message::new(doc_name.clone(), new_doc));
|
queue.send(Message::new(doc_name.clone(), new_doc));
|
||||||
test_doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
test_doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
||||||
@ -1310,7 +1310,7 @@ mod document_files {
|
|||||||
test_doc.start(standard_paths());
|
test_doc.start(standard_paths());
|
||||||
let queue = test_doc.get_queue();
|
let queue = test_doc.get_queue();
|
||||||
let name = Name::english("bad");
|
let name = Name::english("bad");
|
||||||
let mut addition = Addition::new();
|
let mut addition = Addition::new(test_doc.doc_name());
|
||||||
addition.add_field(name.clone(), "doesn't matter");
|
addition.add_field(name.clone(), "doesn't matter");
|
||||||
queue.send(Message::new(
|
queue.send(Message::new(
|
||||||
test_doc.get_docdef().get_document_names()[0].clone(),
|
test_doc.get_docdef().get_document_names()[0].clone(),
|
||||||
@ -1331,7 +1331,7 @@ mod document_files {
|
|||||||
let mut test_doc = TestDocument::new([FieldType::Uuid].to_vec());
|
let mut test_doc = TestDocument::new([FieldType::Uuid].to_vec());
|
||||||
test_doc.start(standard_paths());
|
test_doc.start(standard_paths());
|
||||||
let queue = test_doc.get_queue();
|
let queue = test_doc.get_queue();
|
||||||
let mut addition = Addition::new();
|
let mut addition = Addition::new(test_doc.doc_name());
|
||||||
addition.add_field(Name::english("field0"), "string");
|
addition.add_field(Name::english("field0"), "string");
|
||||||
queue.send(Message::new(
|
queue.send(Message::new(
|
||||||
test_doc.get_docdef().get_document_names()[0].clone(),
|
test_doc.get_docdef().get_document_names()[0].clone(),
|
||||||
@ -1358,7 +1358,7 @@ mod document_files {
|
|||||||
let mut test_doc = TestDocument::new([FieldType::Integer, FieldType::Integer].to_vec());
|
let mut test_doc = TestDocument::new([FieldType::Integer, FieldType::Integer].to_vec());
|
||||||
test_doc.start(standard_paths());
|
test_doc.start(standard_paths());
|
||||||
let queue = test_doc.get_queue();
|
let queue = test_doc.get_queue();
|
||||||
let mut addition = Addition::new();
|
let mut addition = Addition::new(test_doc.doc_name());
|
||||||
addition.add_field(Name::english("field0"), 1);
|
addition.add_field(Name::english("field0"), 1);
|
||||||
queue.send(Message::new(
|
queue.send(Message::new(
|
||||||
test_doc.get_docdef().get_document_names()[0].clone(),
|
test_doc.get_docdef().get_document_names()[0].clone(),
|
||||||
@ -1691,7 +1691,7 @@ mod document_files {
|
|||||||
test_doc.start(standard_paths());
|
test_doc.start(standard_paths());
|
||||||
let queue = test_doc.get_queue();
|
let queue = test_doc.get_queue();
|
||||||
let rx = test_doc.get_receiver();
|
let rx = test_doc.get_receiver();
|
||||||
let new_doc = Addition::new();
|
let new_doc = Addition::new(doc_name.clone());
|
||||||
let msg = Message::new(doc_name, new_doc);
|
let msg = Message::new(doc_name, new_doc);
|
||||||
queue.send(msg);
|
queue.send(msg);
|
||||||
let result = rx.recv_timeout(TIMEOUT).unwrap();
|
let result = rx.recv_timeout(TIMEOUT).unwrap();
|
||||||
@ -1719,7 +1719,7 @@ mod document_files {
|
|||||||
test_doc.start(standard_paths());
|
test_doc.start(standard_paths());
|
||||||
let queue = test_doc.get_queue();
|
let queue = test_doc.get_queue();
|
||||||
let rx = test_doc.get_receiver();
|
let rx = test_doc.get_receiver();
|
||||||
let new_doc = Addition::new();
|
let new_doc = Addition::new(doc_name.clone());
|
||||||
let msg = Message::new(doc_name, new_doc);
|
let msg = Message::new(doc_name, new_doc);
|
||||||
queue.send(msg);
|
queue.send(msg);
|
||||||
let result = rx.recv_timeout(TIMEOUT).unwrap();
|
let result = rx.recv_timeout(TIMEOUT).unwrap();
|
||||||
@ -1747,7 +1747,7 @@ mod document_files {
|
|||||||
test_doc.start(standard_paths());
|
test_doc.start(standard_paths());
|
||||||
let queue = test_doc.get_queue();
|
let queue = test_doc.get_queue();
|
||||||
let rx = test_doc.get_receiver();
|
let rx = test_doc.get_receiver();
|
||||||
let mut new_doc = Addition::new();
|
let mut new_doc = Addition::new(doc_name.clone());
|
||||||
new_doc.add_field(&field_name, Uuid::nil());
|
new_doc.add_field(&field_name, Uuid::nil());
|
||||||
let msg = Message::new(doc_name, new_doc);
|
let msg = Message::new(doc_name, new_doc);
|
||||||
queue.send(msg);
|
queue.send(msg);
|
||||||
@ -2023,9 +2023,9 @@ mod document_files {
|
|||||||
update.get_values_mut().add_field(&fname, new);
|
update.get_values_mut().add_field(&fname, new);
|
||||||
test_doc.send(update);
|
test_doc.send(update);
|
||||||
test_doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
test_doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
||||||
let mut should_clear = Addition::new();
|
let mut should_clear = Addition::new(test_doc.doc_name());
|
||||||
should_clear.add_field(fname.clone(), old);
|
should_clear.add_field(fname.clone(), old);
|
||||||
let mut should_error = Addition::new();
|
let mut should_error = Addition::new(test_doc.doc_name());
|
||||||
should_error.add_field(fname.clone(), new);
|
should_error.add_field(fname.clone(), new);
|
||||||
test_doc.send(should_clear);
|
test_doc.send(should_clear);
|
||||||
let result = test_doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
let result = test_doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
||||||
@ -2064,10 +2064,10 @@ mod document_files {
|
|||||||
let f0data = Uuid::new_v4();
|
let f0data = Uuid::new_v4();
|
||||||
let f1bad_data = "NotUuid";
|
let f1bad_data = "NotUuid";
|
||||||
let f1good_data = Uuid::nil();
|
let f1good_data = Uuid::nil();
|
||||||
let mut bad_addition = Addition::new();
|
let mut bad_addition = Addition::new(test_doc.doc_name());
|
||||||
bad_addition.add_field(&f0name, f0data.clone());
|
bad_addition.add_field(&f0name, f0data.clone());
|
||||||
bad_addition.add_field(&f1name, f1bad_data);
|
bad_addition.add_field(&f1name, f1bad_data);
|
||||||
let mut good_addition = Addition::new();
|
let mut good_addition = Addition::new(test_doc.doc_name());
|
||||||
good_addition.add_field(&f0name, f0data.clone());
|
good_addition.add_field(&f0name, f0data.clone());
|
||||||
good_addition.add_field(&f1name, f1good_data.clone());
|
good_addition.add_field(&f1name, f1good_data.clone());
|
||||||
test_doc.send(bad_addition);
|
test_doc.send(bad_addition);
|
||||||
@ -2110,7 +2110,7 @@ mod document_files {
|
|||||||
update.get_values_mut().add_field(fname.clone(), new);
|
update.get_values_mut().add_field(fname.clone(), new);
|
||||||
doc.send(update);
|
doc.send(update);
|
||||||
doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
||||||
let mut old_addition = Addition::new();
|
let mut old_addition = Addition::new(doc.doc_name());
|
||||||
old_addition.add_field(&fname, old);
|
old_addition.add_field(&fname, old);
|
||||||
doc.send(old_addition);
|
doc.send(old_addition);
|
||||||
let result = doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
let result = doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
||||||
@ -2124,7 +2124,7 @@ mod document_files {
|
|||||||
}
|
}
|
||||||
_ => unreachable!("got {:?}: should have gotten a reply", action),
|
_ => unreachable!("got {:?}: should have gotten a reply", action),
|
||||||
}
|
}
|
||||||
let mut new_addition = Addition::new();
|
let mut new_addition = Addition::new(doc.doc_name());
|
||||||
new_addition.add_field(fname.clone(), new);
|
new_addition.add_field(fname.clone(), new);
|
||||||
doc.send(new_addition);
|
doc.send(new_addition);
|
||||||
let result = doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
let result = doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
||||||
@ -2208,7 +2208,7 @@ mod document_files {
|
|||||||
let mut calc = Calculation::new(Operand::Add);
|
let mut calc = Calculation::new(Operand::Add);
|
||||||
calc.add_value(FieldType::DateTime).unwrap();
|
calc.add_value(FieldType::DateTime).unwrap();
|
||||||
calc.add_value(duration.clone()).unwrap();
|
calc.add_value(duration.clone()).unwrap();
|
||||||
let mut addition = Addition::new();
|
let mut addition = Addition::new(doc.doc_name());
|
||||||
addition.add_field(&fname, calc);
|
addition.add_field(&fname, calc);
|
||||||
let start = Utc::now() + duration;
|
let start = Utc::now() + duration;
|
||||||
doc.send(addition);
|
doc.send(addition);
|
||||||
@ -2302,7 +2302,7 @@ mod document_files {
|
|||||||
doc.populate([value.into()].to_vec());
|
doc.populate([value.into()].to_vec());
|
||||||
doc.send(Delete::new(Query::internal()));
|
doc.send(Delete::new(Query::internal()));
|
||||||
doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
||||||
let mut addition = Addition::new();
|
let mut addition = Addition::new(doc.doc_name());
|
||||||
addition.add_field(&fname, value.clone());
|
addition.add_field(&fname, value.clone());
|
||||||
doc.send(addition);
|
doc.send(addition);
|
||||||
let result = doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
let result = doc.get_receiver().recv_timeout(TIMEOUT).unwrap();
|
||||||
|
|||||||
@ -188,7 +188,7 @@ mod sessions {
|
|||||||
let mut ids: HashSet<Uuid> = HashSet::new();
|
let mut ids: HashSet<Uuid> = HashSet::new();
|
||||||
let count = 10;
|
let count = 10;
|
||||||
for _ in 0..count {
|
for _ in 0..count {
|
||||||
let msg = Setup::message(Addition::new());
|
let msg = Setup::message(Addition::new(Session::doc_names()[0].clone()));
|
||||||
setup.send(msg);
|
setup.send(msg);
|
||||||
let result = setup.recv().unwrap();
|
let result = setup.recv().unwrap();
|
||||||
match result.get_action() {
|
match result.get_action() {
|
||||||
@ -211,7 +211,7 @@ mod sessions {
|
|||||||
#[test]
|
#[test]
|
||||||
fn expire_default_is_an_hour_from_now() {
|
fn expire_default_is_an_hour_from_now() {
|
||||||
let setup = Setup::new();
|
let setup = Setup::new();
|
||||||
let msg = Setup::message(Addition::new());
|
let msg = Setup::message(Addition::new(Session::doc_names()[0].clone()));
|
||||||
let start_time = Utc::now() + Duration::from_hours(1);
|
let start_time = Utc::now() + Duration::from_hours(1);
|
||||||
setup.send(msg);
|
setup.send(msg);
|
||||||
let result = setup.recv().unwrap();
|
let result = setup.recv().unwrap();
|
||||||
@ -238,7 +238,7 @@ mod sessions {
|
|||||||
fn session_ids_error_when_not_unique() {
|
fn session_ids_error_when_not_unique() {
|
||||||
let setup = Setup::new();
|
let setup = Setup::new();
|
||||||
let id = Uuid::new_v4();
|
let id = Uuid::new_v4();
|
||||||
let mut addition = Addition::new();
|
let mut addition = Addition::new(Session::doc_names()[0].clone());
|
||||||
addition.add_field(Name::english("id"), id);
|
addition.add_field(Name::english("id"), id);
|
||||||
setup.send(Setup::message(addition.clone()));
|
setup.send(Setup::message(addition.clone()));
|
||||||
setup.recv().unwrap();
|
setup.recv().unwrap();
|
||||||
@ -259,7 +259,7 @@ mod sessions {
|
|||||||
let setup = Setup::new();
|
let setup = Setup::new();
|
||||||
let id = Uuid::new_v4();
|
let id = Uuid::new_v4();
|
||||||
let timestamp = Utc::now() + Duration::from_secs(60);
|
let timestamp = Utc::now() + Duration::from_secs(60);
|
||||||
let mut addition = Addition::new();
|
let mut addition = Addition::new(Session::doc_names()[0].clone());
|
||||||
addition.add_field(Name::english("id"), id.clone());
|
addition.add_field(Name::english("id"), id.clone());
|
||||||
addition.add_field(Name::english("expire"), timestamp);
|
addition.add_field(Name::english("expire"), timestamp);
|
||||||
setup.send(Setup::message(addition));
|
setup.send(Setup::message(addition));
|
||||||
@ -314,10 +314,10 @@ mod sessions {
|
|||||||
let duration = Duration::from_secs(60);
|
let duration = Duration::from_secs(60);
|
||||||
let expire1 = Utc::now() + duration;
|
let expire1 = Utc::now() + duration;
|
||||||
let expire2 = Utc::now() - duration;
|
let expire2 = Utc::now() - duration;
|
||||||
let mut addition1 = Addition::new();
|
let mut addition1 = Addition::new(Session::doc_names()[0].clone());
|
||||||
addition1.add_field(Name::english("id"), id1.clone());
|
addition1.add_field(Name::english("id"), id1.clone());
|
||||||
addition1.add_field(Name::english("expire"), expire1);
|
addition1.add_field(Name::english("expire"), expire1);
|
||||||
let mut addition2 = Addition::new();
|
let mut addition2 = Addition::new(Session::doc_names()[0].clone());
|
||||||
addition2.add_field(Name::english("id"), id2);
|
addition2.add_field(Name::english("id"), id2);
|
||||||
addition2.add_field(Name::english("expire"), expire2);
|
addition2.add_field(Name::english("expire"), expire2);
|
||||||
setup.send(Setup::message(addition1));
|
setup.send(Setup::message(addition1));
|
||||||
|
|||||||
@ -54,7 +54,11 @@ impl MoreThanText {
|
|||||||
match result.get_action() {
|
match result.get_action() {
|
||||||
MsgAction::Records(data) => {
|
MsgAction::Records(data) => {
|
||||||
if data.len() == 0 {
|
if data.len() == 0 {
|
||||||
self.recursive_session_request(rx, Addition::new().into(), msg)
|
self.recursive_session_request(
|
||||||
|
rx,
|
||||||
|
Addition::new(Session::doc_names()[0].clone()).into(),
|
||||||
|
msg,
|
||||||
|
)
|
||||||
} else {
|
} else {
|
||||||
let rec = data.iter().last().unwrap();
|
let rec = data.iter().last().unwrap();
|
||||||
let field = rec.get(Name::english("id")).unwrap();
|
let field = rec.get(Name::english("id")).unwrap();
|
||||||
@ -71,7 +75,7 @@ impl MoreThanText {
|
|||||||
pub fn validate_session(&mut self, session: Option<String>) -> Uuid {
|
pub fn validate_session(&mut self, session: Option<String>) -> Uuid {
|
||||||
let (tx, rx) = channel();
|
let (tx, rx) = channel();
|
||||||
let sender_id = self.queue.add_sender(tx);
|
let sender_id = self.queue.add_sender(tx);
|
||||||
let new_session: MsgAction = Addition::new().into();
|
let new_session: MsgAction = Addition::new(Session::doc_names()[0].clone()).into();
|
||||||
let action = match session {
|
let action = match session {
|
||||||
Some(data) => match Uuid::try_from(data.as_str()) {
|
Some(data) => match Uuid::try_from(data.as_str()) {
|
||||||
Ok(id) => {
|
Ok(id) => {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user