@@ -53,6 +53,21 @@ pub enum UnaryOperator {
5353 PGAbs ,
5454 /// Unary logical not operator: e.g. `! false` (Hive-specific)
5555 BangNot ,
56+ /// `#` Number of points in path or polygon (PostgreSQL/Redshift geometric operator)
57+ /// see <https://www.postgresql.org/docs/9.5/functions-geometry.html>
58+ Hash ,
59+ /// `@-@` Length or circumference (PostgreSQL/Redshift geometric operator)
60+ /// see <https://www.postgresql.org/docs/9.5/functions-geometry.html>
61+ AtDashAt ,
62+ /// `@@` Center (PostgreSQL/Redshift geometric operator)
63+ /// see <https://www.postgresql.org/docs/9.5/functions-geometry.html>
64+ DoubleAt ,
65+ /// `?-` Is horizontal? (PostgreSQL/Redshift geometric operator)
66+ /// see <https://www.postgresql.org/docs/9.5/functions-geometry.html>
67+ QuestionDash ,
68+ /// `?|` Is vertical? (PostgreSQL/Redshift geometric operator)
69+ /// see <https://www.postgresql.org/docs/9.5/functions-geometry.html>
70+ QuestionPipe ,
5671}
5772
5873impl fmt:: Display for UnaryOperator {
@@ -68,6 +83,11 @@ impl fmt::Display for UnaryOperator {
6883 UnaryOperator :: PGPrefixFactorial => "!!" ,
6984 UnaryOperator :: PGAbs => "@" ,
7085 UnaryOperator :: BangNot => "!" ,
86+ UnaryOperator :: Hash => "#" ,
87+ UnaryOperator :: AtDashAt => "@-@" ,
88+ UnaryOperator :: DoubleAt => "@@" ,
89+ UnaryOperator :: QuestionDash => "?-" ,
90+ UnaryOperator :: QuestionPipe => "?|" ,
7191 } )
7292 }
7393}
@@ -253,6 +273,54 @@ pub enum BinaryOperator {
253273 /// Specifies a test for an overlap between two datetime periods:
254274 /// <https://jakewheat.github.io/sql-overview/sql-2016-foundation-grammar.html#overlaps-predicate>
255275 Overlaps ,
276+ /// `##` Point of closest proximity (PostgreSQL/Redshift geometric operator)
277+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
278+ DoubleHash ,
279+ /// `<->` Distance between (PostgreSQL/Redshift geometric operator)
280+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
281+ LtDashGt ,
282+ /// `&<` Overlaps to left? (PostgreSQL/Redshift geometric operator)
283+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
284+ AndLt ,
285+ /// `&>` Overlaps to right? (PostgreSQL/Redshift geometric operator)
286+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
287+ AndGt ,
288+ /// `<<|` Is strictly below? (PostgreSQL/Redshift geometric operator)
289+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
290+ LtLtPipe ,
291+ /// `|>>` Is strictly above? (PostgreSQL/Redshift geometric operator)
292+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
293+ PipeGtGt ,
294+ /// `&<|` Does not extend above? (PostgreSQL/Redshift geometric operator)
295+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
296+ AndLtPipe ,
297+ /// `|&>` Does not extend below? (PostgreSQL/Redshift geometric operator)
298+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
299+ PipeAndGt ,
300+ /// `<^` Is below? (PostgreSQL/Redshift geometric operator)
301+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
302+ LtCaret ,
303+ /// `>^` Is above? (PostgreSQL/Redshift geometric operator)
304+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
305+ GtCaret ,
306+ /// `?#` Intersects? (PostgreSQL/Redshift geometric operator)
307+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
308+ QuestionHash ,
309+ /// `?-` Is horizontal? (PostgreSQL/Redshift geometric operator)
310+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
311+ QuestionDash ,
312+ /// `?-|` Is perpendicular? (PostgreSQL/Redshift geometric operator)
313+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
314+ QuestionDashPipe ,
315+ /// `?||` Are Parallel? (PostgreSQL/Redshift geometric operator)
316+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
317+ QuestionDoublePipe ,
318+ /// `@` Contained or on? (PostgreSQL/Redshift geometric operator)
319+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
320+ At ,
321+ /// `~=` Same as? (PostgreSQL/Redshift geometric operator)
322+ /// See <https://www.postgresql.org/docs/9.5/functions-geometry.html>
323+ TildeEq ,
256324}
257325
258326impl fmt:: Display for BinaryOperator {
@@ -310,6 +378,22 @@ impl fmt::Display for BinaryOperator {
310378 write ! ( f, "OPERATOR({})" , display_separated( idents, "." ) )
311379 }
312380 BinaryOperator :: Overlaps => f. write_str ( "OVERLAPS" ) ,
381+ BinaryOperator :: DoubleHash => f. write_str ( "##" ) ,
382+ BinaryOperator :: LtDashGt => f. write_str ( "<->" ) ,
383+ BinaryOperator :: AndLt => f. write_str ( "&<" ) ,
384+ BinaryOperator :: AndGt => f. write_str ( "&>" ) ,
385+ BinaryOperator :: LtLtPipe => f. write_str ( "<<|" ) ,
386+ BinaryOperator :: PipeGtGt => f. write_str ( "|>>" ) ,
387+ BinaryOperator :: AndLtPipe => f. write_str ( "&<|" ) ,
388+ BinaryOperator :: PipeAndGt => f. write_str ( "|&>" ) ,
389+ BinaryOperator :: LtCaret => f. write_str ( "<^" ) ,
390+ BinaryOperator :: GtCaret => f. write_str ( ">^" ) ,
391+ BinaryOperator :: QuestionHash => f. write_str ( "?#" ) ,
392+ BinaryOperator :: QuestionDash => f. write_str ( "?-" ) ,
393+ BinaryOperator :: QuestionDashPipe => f. write_str ( "?-|" ) ,
394+ BinaryOperator :: QuestionDoublePipe => f. write_str ( "?||" ) ,
395+ BinaryOperator :: At => f. write_str ( "@" ) ,
396+ BinaryOperator :: TildeEq => f. write_str ( "~=" ) ,
313397 }
314398 }
315399}
0 commit comments