surrealdb_sql/
api_method.rs1use std::fmt::{self, Display};
2
3use surrealdb_types::{SqlFormat, SurrealValue, ToSql};
4
5#[derive(SurrealValue, Clone, Copy, Debug, Default, Eq, PartialEq, PartialOrd, Hash)]
7#[surreal(crate = "surrealdb_types")]
8#[cfg_attr(feature = "arbitrary", derive(arbitrary::Arbitrary))]
9#[surreal(untagged, lowercase)]
10pub enum ApiMethod {
11 Delete,
13 #[default]
15 Get,
16 Patch,
18 Post,
20 Put,
22 Trace,
24}
25
26impl Display for ApiMethod {
27 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
28 match self {
29 Self::Delete => write!(f, "delete"),
30 Self::Get => write!(f, "get"),
31 Self::Patch => write!(f, "patch"),
32 Self::Post => write!(f, "post"),
33 Self::Put => write!(f, "put"),
34 Self::Trace => write!(f, "trace"),
35 }
36 }
37}
38
39impl ToSql for ApiMethod {
40 fn fmt_sql(&self, f: &mut String, fmt: SqlFormat) {
41 self.to_string().fmt_sql(f, fmt)
42 }
43}