Module: ROM::SQL::Postgres::Types::LTreeMethods

Defined in:
lib/rom/sql/extensions/postgres/types/ltree.rb

Overview

API:

  • public

Constant Summary collapse

ASCENDANT =

API:

  • public

['(', ' @> ', ')'].freeze
FIND_ASCENDANT =

API:

  • public

['(', ' ?@> ', ')'].freeze
DESCENDANT =

API:

  • public

['(', ' <@ ', ')'].freeze
FIND_DESCENDANT =

API:

  • public

['(', ' ?<@ ', ')'].freeze
MATCH_ANY =

API:

  • public

['(', ' ? ', ')'].freeze
MATCH_ANY_LQUERY =

API:

  • public

['(', ' ?~ ', ')'].freeze
MATCH_LTEXTQUERY =

API:

  • public

['(', ' @ ', ')'].freeze
MATCH_ANY_LTEXTQUERY =

API:

  • public

['(', ' ?@ ', ')'].freeze

Instance Method Summary collapse

Instance Method Details

#match(_type, expr, query) ⇒ Object

API:

  • public



260
261
262
263
264
# File 'lib/rom/sql/extensions/postgres/types/ltree.rb', line 260

def match(_type, expr, query)
  Attribute[SQL::Types::Bool].meta(
    sql_expr: ::Sequel::SQL::BooleanExpression.new(:~, expr, query)
  )
end

#match_any(_type, expr, query) ⇒ Object

API:

  • public



266
267
268
269
270
271
# File 'lib/rom/sql/extensions/postgres/types/ltree.rb', line 266

def match_any(_type, expr, query)
  array = build_array_query(query)
  Attribute[SQL::Types::Bool].meta(
    sql_expr: custom_operator_expr(MATCH_ANY, expr, array)
  )
end