pgrx_pg_sys/submodules/
sql_translatable.rs1use crate::{
11 BOX, CIRCLE, Datum, FdwRoutine, FunctionCallInfoBaseData, IndexAmRoutine, ItemPointerData,
12 LINE, LSEG, PlannerInfo, Point, TableAmRoutine,
13};
14use pgrx_sql_entity_graph::metadata::{
15 ArgumentError, ReturnsError, ReturnsRef, SqlMappingRef, SqlTranslatable, TypeOrigin,
16};
17
18unsafe impl SqlTranslatable for FunctionCallInfoBaseData {
19 const TYPE_IDENT: &'static str =
20 pgrx_sql_entity_graph::pgrx_resolved_type!(FunctionCallInfoBaseData);
21 const TYPE_ORIGIN: TypeOrigin = TypeOrigin::External;
22 const ARGUMENT_SQL: Result<SqlMappingRef, ArgumentError> = Ok(SqlMappingRef::Skip);
23 const RETURN_SQL: Result<ReturnsRef, ReturnsError> = Ok(ReturnsRef::One(SqlMappingRef::Skip));
24}
25
26unsafe impl SqlTranslatable for PlannerInfo {
27 const TYPE_IDENT: &'static str = pgrx_sql_entity_graph::pgrx_resolved_type!(PlannerInfo);
28 const TYPE_ORIGIN: TypeOrigin = TypeOrigin::External;
29 const ARGUMENT_SQL: Result<SqlMappingRef, ArgumentError> =
30 Ok(SqlMappingRef::literal("internal"));
31 const RETURN_SQL: Result<ReturnsRef, ReturnsError> =
32 Ok(ReturnsRef::One(SqlMappingRef::literal("internal")));
33}
34
35unsafe impl SqlTranslatable for IndexAmRoutine {
36 const TYPE_IDENT: &'static str = pgrx_sql_entity_graph::pgrx_resolved_type!(IndexAmRoutine);
37 const TYPE_ORIGIN: TypeOrigin = TypeOrigin::External;
38 const ARGUMENT_SQL: Result<SqlMappingRef, ArgumentError> =
39 Ok(SqlMappingRef::literal("internal"));
40 const RETURN_SQL: Result<ReturnsRef, ReturnsError> =
41 Ok(ReturnsRef::One(SqlMappingRef::literal("internal")));
42}
43
44unsafe impl SqlTranslatable for TableAmRoutine {
45 const TYPE_IDENT: &'static str = pgrx_sql_entity_graph::pgrx_resolved_type!(TableAmRoutine);
46 const TYPE_ORIGIN: TypeOrigin = TypeOrigin::External;
47 const ARGUMENT_SQL: Result<SqlMappingRef, ArgumentError> =
48 Ok(SqlMappingRef::literal("internal"));
49 const RETURN_SQL: Result<ReturnsRef, ReturnsError> =
50 Ok(ReturnsRef::One(SqlMappingRef::literal("internal")));
51}
52
53unsafe impl SqlTranslatable for FdwRoutine {
54 const TYPE_IDENT: &'static str = pgrx_sql_entity_graph::pgrx_resolved_type!(FdwRoutine);
55 const TYPE_ORIGIN: TypeOrigin = TypeOrigin::External;
56 const ARGUMENT_SQL: Result<SqlMappingRef, ArgumentError> =
57 Ok(SqlMappingRef::literal("fdw_handler"));
58 const RETURN_SQL: Result<ReturnsRef, ReturnsError> =
59 Ok(ReturnsRef::One(SqlMappingRef::literal("fdw_handler")));
60}
61
62unsafe impl SqlTranslatable for BOX {
63 const TYPE_IDENT: &'static str = pgrx_sql_entity_graph::pgrx_resolved_type!(BOX);
64 const TYPE_ORIGIN: TypeOrigin = TypeOrigin::External;
65 const ARGUMENT_SQL: Result<SqlMappingRef, ArgumentError> = Ok(SqlMappingRef::literal("box"));
66 const RETURN_SQL: Result<ReturnsRef, ReturnsError> =
67 Ok(ReturnsRef::One(SqlMappingRef::literal("box")));
68}
69
70unsafe impl SqlTranslatable for CIRCLE {
71 const TYPE_IDENT: &'static str = pgrx_sql_entity_graph::pgrx_resolved_type!(CIRCLE);
72 const TYPE_ORIGIN: TypeOrigin = TypeOrigin::External;
73 const ARGUMENT_SQL: Result<SqlMappingRef, ArgumentError> = Ok(SqlMappingRef::literal("circle"));
74 const RETURN_SQL: Result<ReturnsRef, ReturnsError> =
75 Ok(ReturnsRef::One(SqlMappingRef::literal("circle")));
76}
77
78unsafe impl SqlTranslatable for LINE {
79 const TYPE_IDENT: &'static str = pgrx_sql_entity_graph::pgrx_resolved_type!(LINE);
80 const TYPE_ORIGIN: TypeOrigin = TypeOrigin::External;
81 const ARGUMENT_SQL: Result<SqlMappingRef, ArgumentError> = Ok(SqlMappingRef::literal("line"));
82 const RETURN_SQL: Result<ReturnsRef, ReturnsError> =
83 Ok(ReturnsRef::One(SqlMappingRef::literal("line")));
84}
85
86unsafe impl SqlTranslatable for LSEG {
87 const TYPE_IDENT: &'static str = pgrx_sql_entity_graph::pgrx_resolved_type!(LSEG);
88 const TYPE_ORIGIN: TypeOrigin = TypeOrigin::External;
89 const ARGUMENT_SQL: Result<SqlMappingRef, ArgumentError> = Ok(SqlMappingRef::literal("lseg"));
90 const RETURN_SQL: Result<ReturnsRef, ReturnsError> =
91 Ok(ReturnsRef::One(SqlMappingRef::literal("lseg")));
92}
93
94unsafe impl SqlTranslatable for Point {
95 const TYPE_IDENT: &'static str = pgrx_sql_entity_graph::pgrx_resolved_type!(Point);
96 const TYPE_ORIGIN: TypeOrigin = TypeOrigin::External;
97 const ARGUMENT_SQL: Result<SqlMappingRef, ArgumentError> = Ok(SqlMappingRef::literal("point"));
98 const RETURN_SQL: Result<ReturnsRef, ReturnsError> =
99 Ok(ReturnsRef::One(SqlMappingRef::literal("point")));
100}
101
102unsafe impl SqlTranslatable for ItemPointerData {
103 const TYPE_IDENT: &'static str = pgrx_sql_entity_graph::pgrx_resolved_type!(ItemPointerData);
104 const TYPE_ORIGIN: TypeOrigin = TypeOrigin::External;
105 const ARGUMENT_SQL: Result<SqlMappingRef, ArgumentError> = Ok(SqlMappingRef::literal("tid"));
106 const RETURN_SQL: Result<ReturnsRef, ReturnsError> =
107 Ok(ReturnsRef::One(SqlMappingRef::literal("tid")));
108}
109
110unsafe impl SqlTranslatable for Datum {
111 const TYPE_IDENT: &'static str = pgrx_sql_entity_graph::pgrx_resolved_type!(Datum);
112 const TYPE_ORIGIN: TypeOrigin = TypeOrigin::External;
113 const ARGUMENT_SQL: Result<SqlMappingRef, ArgumentError> = Err(ArgumentError::Datum);
114 const RETURN_SQL: Result<ReturnsRef, ReturnsError> = Err(ReturnsError::Datum);
115}