pgx_pg_sys/submodules/
sql_translatable.rs

1use pgx_sql_entity_graph::metadata::{
2    ArgumentError, Returns, ReturnsError, SqlMapping, SqlTranslatable,
3};
4
5#[cfg(any(feature = "pg15", feature = "pg14", feature = "pg13", feature = "pg12"))]
6unsafe impl SqlTranslatable for crate::FunctionCallInfoBaseData {
7    fn argument_sql() -> Result<SqlMapping, ArgumentError> {
8        Ok(SqlMapping::Skip)
9    }
10    fn return_sql() -> Result<Returns, ReturnsError> {
11        Ok(Returns::One(SqlMapping::Skip))
12    }
13}
14
15#[cfg(any(feature = "pg11"))]
16unsafe impl SqlTranslatable for crate::FunctionCallInfoData {
17    fn argument_sql() -> Result<SqlMapping, ArgumentError> {
18        Ok(SqlMapping::Skip)
19    }
20    fn return_sql() -> Result<Returns, ReturnsError> {
21        Ok(Returns::One(SqlMapping::Skip))
22    }
23}
24
25unsafe impl SqlTranslatable for crate::PlannerInfo {
26    fn argument_sql() -> Result<SqlMapping, ArgumentError> {
27        Ok(SqlMapping::literal("internal"))
28    }
29    fn return_sql() -> Result<Returns, ReturnsError> {
30        Ok(Returns::One(SqlMapping::literal("internal")))
31    }
32}
33
34unsafe impl SqlTranslatable for crate::IndexAmRoutine {
35    fn argument_sql() -> Result<SqlMapping, ArgumentError> {
36        Ok(SqlMapping::literal("internal"))
37    }
38    fn return_sql() -> Result<Returns, ReturnsError> {
39        Ok(Returns::One(SqlMapping::literal("internal")))
40    }
41}
42unsafe impl SqlTranslatable for crate::FdwRoutine {
43    fn argument_sql() -> Result<SqlMapping, ArgumentError> {
44        Ok(SqlMapping::literal("fdw_handler"))
45    }
46    fn return_sql() -> Result<Returns, ReturnsError> {
47        Ok(Returns::One(SqlMapping::literal("fdw_handler")))
48    }
49}
50
51unsafe impl SqlTranslatable for crate::BOX {
52    fn argument_sql() -> Result<SqlMapping, ArgumentError> {
53        Ok(SqlMapping::literal("box"))
54    }
55    fn return_sql() -> Result<Returns, ReturnsError> {
56        Ok(Returns::One(SqlMapping::literal("box")))
57    }
58}
59
60unsafe impl SqlTranslatable for crate::Point {
61    fn argument_sql() -> Result<SqlMapping, ArgumentError> {
62        Ok(SqlMapping::literal("point"))
63    }
64    fn return_sql() -> Result<Returns, ReturnsError> {
65        Ok(Returns::One(SqlMapping::literal("point")))
66    }
67}
68
69unsafe impl SqlTranslatable for crate::ItemPointerData {
70    fn argument_sql() -> Result<SqlMapping, ArgumentError> {
71        Ok(SqlMapping::literal("tid"))
72    }
73    fn return_sql() -> Result<Returns, ReturnsError> {
74        Ok(Returns::One(SqlMapping::literal("tid")))
75    }
76}
77
78unsafe impl SqlTranslatable for crate::Datum {
79    fn argument_sql() -> Result<SqlMapping, ArgumentError> {
80        Err(ArgumentError::Datum)
81    }
82    fn return_sql() -> Result<Returns, ReturnsError> {
83        Err(ReturnsError::Datum)
84    }
85}