diff --git a/documentation.html b/documentation.html index 8365a7bbf..e342315e2 100644 --- a/documentation.html +++ b/documentation.html @@ -44,7 +44,7 @@
-

Documentation for Sequel (v5.84.0)

+

Documentation for Sequel (v5.85.0)


@@ -166,6 +166,8 @@

Release Notes + 5.85 | + 5.84 | 5.83 | diff --git a/plugins.html b/plugins.html index 27c5181fc..fcc64cf8f 100644 --- a/plugins.html +++ b/plugins.html @@ -45,7 +45,7 @@
-

Sequel::Model Plugins for v5.84.0

+

Sequel::Model Plugins for v5.85.0

diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONBArray.html b/rdoc-plugins/classes/Sequel/Postgres/JSONBArray.html index 86791314c..986405a66 100644 --- a/rdoc-plugins/classes/Sequel/Postgres/JSONBArray.html +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONBArray.html @@ -68,9 +68,9 @@

Public Instance methods

[show source]
     # File lib/sequel/extensions/pg_json_ops.rb
-1071 def op
-1072   JSONBOp.new(self)
-1073 end
+1377 def op +1378 JSONBOp.new(self) +1379 end diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONBHash.html b/rdoc-plugins/classes/Sequel/Postgres/JSONBHash.html index 32a7ed08f..78a3f8c61 100644 --- a/rdoc-plugins/classes/Sequel/Postgres/JSONBHash.html +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONBHash.html @@ -68,9 +68,9 @@

Public Instance methods

[show source]
     # File lib/sequel/extensions/pg_json_ops.rb
-1079 def op
-1080   JSONBOp.new(self)
-1081 end
+1385 def op +1386 JSONBOp.new(self) +1387 end diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONBOp.html b/rdoc-plugins/classes/Sequel/Postgres/JSONBOp.html index 2da13527e..6ca4ee32f 100644 --- a/rdoc-plugins/classes/Sequel/Postgres/JSONBOp.html +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONBOp.html @@ -185,9 +185,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-508 def -(other)
-509   self.class.new(super)
-510 end
+597 def -(other) +598 self.class.new(super) +599 end
@@ -206,22 +206,22 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-487 def [](key)
-488   if is_array?(key)
-489     super
-490   else
-491     case @value
-492     when Symbol, SQL::Identifier, SQL::QualifiedIdentifier, JSONBSubscriptOp
-493       # Only use subscripts for identifiers.  In other cases, switching from
-494       # the -> operator to [] for subscripts causes SQL syntax issues.  You
-495       # only need the [] for subscripting when doing assignment, and
-496       # assignment is generally done on identifiers.
-497       self.class.new(JSONBSubscriptOp.new(self, key))
-498     else
-499       super
-500     end
-501   end
-502 end
+576 def [](key) +577 if is_array?(key) +578 super +579 else +580 case @value +581 when Symbol, SQL::Identifier, SQL::QualifiedIdentifier, JSONBSubscriptOp +582 # Only use subscripts for identifiers. In other cases, switching from +583 # the -> operator to [] for subscripts causes SQL syntax issues. You +584 # only need the [] for subscripting when doing assignment, and +585 # assignment is generally done on identifiers. +586 self.class.new(JSONBSubscriptOp.new(self, key)) +587 else +588 super +589 end +590 end +591 end
@@ -243,9 +243,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-516 def concat(other)
-517   json_op(CONCAT, wrap_input_jsonb(other))
-518 end
+605 def concat(other) +606 json_op(CONCAT, wrap_input_jsonb(other)) +607 end
@@ -267,9 +267,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-523 def contain_all(other)
-524   bool_op(CONTAIN_ALL, wrap_input_array(other))
-525 end
+612 def contain_all(other) +613 bool_op(CONTAIN_ALL, wrap_input_array(other)) +614 end
@@ -291,9 +291,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-530 def contain_any(other)
-531   bool_op(CONTAIN_ANY, wrap_input_array(other))
-532 end
+619 def contain_any(other) +620 bool_op(CONTAIN_ANY, wrap_input_array(other)) +621 end
@@ -315,9 +315,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-544 def contained_by(other)
-545   bool_op(CONTAINED_BY, wrap_input_jsonb(other))
-546 end
+633 def contained_by(other) +634 bool_op(CONTAINED_BY, wrap_input_jsonb(other)) +635 end
@@ -339,9 +339,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-537 def contains(other)
-538   bool_op(CONTAINS, wrap_input_jsonb(other))
-539 end
+626 def contains(other) +627 bool_op(CONTAINS, wrap_input_jsonb(other)) +628 end
@@ -363,9 +363,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-551 def delete_path(other)
-552   json_op(DELETE_PATH, wrap_input_array(other))
-553 end
+640 def delete_path(other) +641 json_op(DELETE_PATH, wrap_input_array(other)) +642 end
@@ -387,9 +387,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-558 def has_key?(key)
-559   bool_op(HAS_KEY, key)
-560 end
+647 def has_key?(key) +648 bool_op(HAS_KEY, key) +649 end
@@ -412,9 +412,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-569 def insert(path, other, insert_after=false)
-570   self.class.new(function(:insert, wrap_input_array(path), wrap_input_jsonb(other), insert_after))
-571 end
+658 def insert(path, other, insert_after=false) +659 self.class.new(function(:insert, wrap_input_array(path), wrap_input_jsonb(other), insert_after)) +660 end
@@ -436,9 +436,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-576 def path_exists(path)
-577   bool_op(PATH_EXISTS, path)
-578 end
+665 def path_exists(path) +666 bool_op(PATH_EXISTS, path) +667 end
@@ -467,9 +467,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-590 def path_exists!(path, vars=nil, silent=nil)
-591   Sequel::SQL::BooleanExpression.new(:NOOP, _path_function(:jsonb_path_exists, path, vars, silent))
-592 end
+679 def path_exists!(path, vars=nil, silent=nil) +680 Sequel::SQL::BooleanExpression.new(:NOOP, _path_function(:jsonb_path_exists, path, vars, silent)) +681 end
@@ -488,9 +488,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-595 def path_exists_tz!(path, vars=nil, silent=nil)
-596   Sequel::SQL::BooleanExpression.new(:NOOP, _path_function(:jsonb_path_exists_tz, path, vars, silent))
-597 end
+684 def path_exists_tz!(path, vars=nil, silent=nil) +685 Sequel::SQL::BooleanExpression.new(:NOOP, _path_function(:jsonb_path_exists_tz, path, vars, silent)) +686 end
@@ -512,9 +512,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-603 def path_match(path)
-604   bool_op(PATH_MATCH, path)
-605 end
+692 def path_match(path) +693 bool_op(PATH_MATCH, path) +694 end
@@ -543,9 +543,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-618 def path_match!(path, vars=nil, silent=nil)
-619   Sequel::SQL::BooleanExpression.new(:NOOP, _path_function(:jsonb_path_match, path, vars, silent))
-620 end
+707 def path_match!(path, vars=nil, silent=nil) +708 Sequel::SQL::BooleanExpression.new(:NOOP, _path_function(:jsonb_path_match, path, vars, silent)) +709 end
@@ -564,9 +564,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-623 def path_match_tz!(path, vars=nil, silent=nil)
-624   Sequel::SQL::BooleanExpression.new(:NOOP, _path_function(:jsonb_path_match_tz, path, vars, silent))
-625 end
+712 def path_match_tz!(path, vars=nil, silent=nil) +713 Sequel::SQL::BooleanExpression.new(:NOOP, _path_function(:jsonb_path_match_tz, path, vars, silent)) +714 end
@@ -595,9 +595,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-638 def path_query(path, vars=nil, silent=nil)
-639   _path_function(:jsonb_path_query, path, vars, silent)
-640 end
+727 def path_query(path, vars=nil, silent=nil) +728 _path_function(:jsonb_path_query, path, vars, silent) +729 end
@@ -626,9 +626,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-658 def path_query_array(path, vars=nil, silent=nil)
-659   JSONBOp.new(_path_function(:jsonb_path_query_array, path, vars, silent))
-660 end
+747 def path_query_array(path, vars=nil, silent=nil) +748 JSONBOp.new(_path_function(:jsonb_path_query_array, path, vars, silent)) +749 end
@@ -647,9 +647,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-663 def path_query_array_tz(path, vars=nil, silent=nil)
-664   JSONBOp.new(_path_function(:jsonb_path_query_array_tz, path, vars, silent))
-665 end
+752 def path_query_array_tz(path, vars=nil, silent=nil) +753 JSONBOp.new(_path_function(:jsonb_path_query_array_tz, path, vars, silent)) +754 end
@@ -678,9 +678,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-678 def path_query_first(path, vars=nil, silent=nil)
-679   JSONBOp.new(_path_function(:jsonb_path_query_first, path, vars, silent))
-680 end
+767 def path_query_first(path, vars=nil, silent=nil) +768 JSONBOp.new(_path_function(:jsonb_path_query_first, path, vars, silent)) +769 end
@@ -699,9 +699,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-683 def path_query_first_tz(path, vars=nil, silent=nil)
-684   JSONBOp.new(_path_function(:jsonb_path_query_first_tz, path, vars, silent))
-685 end
+772 def path_query_first_tz(path, vars=nil, silent=nil) +773 JSONBOp.new(_path_function(:jsonb_path_query_first_tz, path, vars, silent)) +774 end
@@ -720,9 +720,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-643 def path_query_tz(path, vars=nil, silent=nil)
-644   _path_function(:jsonb_path_query_tz, path, vars, silent)
-645 end
+732 def path_query_tz(path, vars=nil, silent=nil) +733 _path_function(:jsonb_path_query_tz, path, vars, silent) +734 end
@@ -741,9 +741,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-688 def pg_jsonb
-689   self
-690 end
+777 def pg_jsonb +778 self +779 end
@@ -765,9 +765,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-695 def pretty
-696   Sequel::SQL::StringExpression.new(:NOOP, function(:pretty))
-697 end
+784 def pretty +785 Sequel::SQL::StringExpression.new(:NOOP, function(:pretty)) +786 end
@@ -790,9 +790,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-705 def set(path, other, create_missing=true)
-706   self.class.new(function(:set, wrap_input_array(path), wrap_input_jsonb(other), create_missing))
-707 end
+794 def set(path, other, create_missing=true) +795 self.class.new(function(:set, wrap_input_array(path), wrap_input_jsonb(other), create_missing)) +796 end
@@ -811,9 +811,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-711 def set_lax(path, other, create_missing=true, null_value_treatment='use_json_null')
-712   self.class.new(function(:set_lax, wrap_input_array(path), wrap_input_jsonb(other), create_missing, null_value_treatment))
-713 end
+800 def set_lax(path, other, create_missing=true, null_value_treatment='use_json_null') +801 self.class.new(function(:set_lax, wrap_input_array(path), wrap_input_jsonb(other), create_missing, null_value_treatment)) +802 end
diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONBSubscriptOp.html b/rdoc-plugins/classes/Sequel/Postgres/JSONBSubscriptOp.html index 34e10f52b..49a3409e5 100644 --- a/rdoc-plugins/classes/Sequel/Postgres/JSONBSubscriptOp.html +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONBSubscriptOp.html @@ -116,11 +116,11 @@

Public Class methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-775 def initialize(expression, sub)
-776   @expression = expression
-777   @sub = sub
-778   freeze
-779 end
+864 def initialize(expression, sub) +865 @expression = expression +866 @sub = sub +867 freeze +868 end

Public Instance methods

@@ -140,9 +140,9 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-789 def sequel_ast_transform(transformer)
-790   self.class.new(transformer.call(@expression), transformer.call(@sub))
-791 end
+878 def sequel_ast_transform(transformer) +879 self.class.new(transformer.call(@expression), transformer.call(@sub)) +880 end
@@ -161,11 +161,11 @@

Public Instance methods

[show source]
    # File lib/sequel/extensions/pg_json_ops.rb
-782 def to_s_append(ds, sql)
-783   server_version = ds.db.server_version
-784   frag = server_version && server_version >= 140000 ? SUBSCRIPT : JSONOp::GET
-785   ds.literal_append(sql, Sequel::SQL::PlaceholderLiteralString.new(frag, [@expression, @sub]))
-786 end
+871 def to_s_append(ds, sql) +872 server_version = ds.db.server_version +873 frag = server_version && server_version >= 140000 ? SUBSCRIPT : JSONOp::GET +874 ds.literal_append(sql, Sequel::SQL::PlaceholderLiteralString.new(frag, [@expression, @sub])) +875 end
diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONBaseOp.html b/rdoc-plugins/classes/Sequel/Postgres/JSONBaseOp.html index 0c968d1c2..7e4818e3b 100644 --- a/rdoc-plugins/classes/Sequel/Postgres/JSONBaseOp.html +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONBaseOp.html @@ -68,6 +68,7 @@

Public Instance

  • populate_set
  • query
  • strip_nulls
  • +
  • table
  • to_record
  • to_recordset
  • typeof
  • @@ -188,13 +189,13 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -192 def [](key)
    -193   if is_array?(key)
    -194     json_op(GET_PATH, wrap_array(key))
    -195   else
    -196     json_op(GET, key)
    -197   end
    -198 end
    +215 def [](key) +216 if is_array?(key) +217 json_op(GET_PATH, wrap_array(key)) +218 else +219 json_op(GET, key) +220 end +221 end
    @@ -216,9 +217,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -204 def array_elements
    -205   function(:array_elements)
    -206 end
    +227 def array_elements +228 function(:array_elements) +229 end
    @@ -240,9 +241,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -211 def array_elements_text
    -212   function(:array_elements_text)
    -213 end
    +234 def array_elements_text +235 function(:array_elements_text) +236 end
    @@ -264,9 +265,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -218 def array_length
    -219   Sequel::SQL::NumericExpression.new(:NOOP, function(:array_length))
    -220 end
    +241 def array_length +242 Sequel::SQL::NumericExpression.new(:NOOP, function(:array_length)) +243 end
    @@ -288,9 +289,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -226 def each
    -227   function(:each)
    -228 end
    +249 def each +250 function(:each) +251 end
    @@ -312,9 +313,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -234 def each_text
    -235   function(:each_text)
    -236 end
    +257 def each_text +258 function(:each_text) +259 end
    @@ -352,9 +353,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -252 def exists(path, opts=OPTS)
    -253   Sequel::SQL::BooleanExpression.new(:NOOP, JSONExistsOp.new(self, path, opts))
    -254 end
    +275 def exists(path, opts=OPTS) +276 Sequel::SQL::BooleanExpression.new(:NOOP, JSONExistsOp.new(self, path, opts)) +277 end
    @@ -377,9 +378,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -260 def extract(*a)
    -261   self.class.new(function(:extract_path, *a))
    -262 end
    +283 def extract(*a) +284 self.class.new(function(:extract_path, *a)) +285 end
    @@ -402,9 +403,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -268 def extract_text(*a)
    -269   Sequel::SQL::StringExpression.new(:NOOP, function(:extract_path_text, *a))
    -270 end
    +291 def extract_text(*a) +292 Sequel::SQL::StringExpression.new(:NOOP, function(:extract_path_text, *a)) +293 end
    @@ -428,13 +429,13 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -278 def get_text(key)
    -279   if is_array?(key)
    -280     json_op(GET_PATH_TEXT, wrap_array(key))
    -281   else
    -282     json_op(GET_TEXT, key)
    -283   end
    -284 end
    +301 def get_text(key) +302 if is_array?(key) +303 json_op(GET_PATH_TEXT, wrap_array(key)) +304 else +305 json_op(GET_TEXT, key) +306 end +307 end
    @@ -465,9 +466,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -296 def is_json(opts=OPTS)
    -297   _is_json(IS_JSON, opts)
    -298 end
    +319 def is_json(opts=OPTS) +320 _is_json(IS_JSON, opts) +321 end
    @@ -491,9 +492,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -306 def is_not_json(opts=OPTS)
    -307   _is_json(IS_NOT_JSON, opts)
    -308 end
    +329 def is_not_json(opts=OPTS) +330 _is_json(IS_NOT_JSON, opts) +331 end
    @@ -515,9 +516,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -313 def keys
    -314   function(:object_keys)
    -315 end
    +336 def keys +337 function(:object_keys) +338 end
    @@ -539,9 +540,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -320 def populate(arg)
    -321   SQL::Function.new(function_name(:populate_record), arg, self)
    -322 end
    +343 def populate(arg) +344 SQL::Function.new(function_name(:populate_record), arg, self) +345 end
    @@ -563,9 +564,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -327 def populate_set(arg)
    -328   SQL::Function.new(function_name(:populate_recordset), arg, self)
    -329 end
    +350 def populate_set(arg) +351 SQL::Function.new(function_name(:populate_recordset), arg, self) +352 end
    @@ -621,9 +622,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -356 def query(path, opts=OPTS)
    -357   self.class.new(JSONQueryOp.new(self, path, opts))
    -358 end
    +379 def query(path, opts=OPTS) +380 self.class.new(JSONQueryOp.new(self, path, opts)) +381 end
    @@ -645,9 +646,108 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -363 def strip_nulls
    -364   self.class.new(function(:strip_nulls))
    -365 end
    +386 def strip_nulls +387 self.class.new(function(:strip_nulls)) +388 end +
    + +
    + +
    +table(path, opts=OPTS, &block) + +
    +
    + +

    Returns json_table SQL function expression, querying JSON data and returning the results as a relational view, which can be accessed similarly to a regular SQL table. This accepts a block that is handled in a similar manner to Database#create_table, though it operates differently.

    + +

    Table level options:

    +
    :on_error +

    How to handle errors when evaluating the JSON path expression.

    +
    :empty_array +

    Return an empty array/result set

    +
    :error +

    raise a DatabaseError

    +
    +
    :passing +

    Variables to pass to the JSON path expression. Keys are variable names, values are the values of the variable.

    +
    + +

    Inside the block, the following methods can be used:

    +
    ordinality(name) +

    Include a FOR ORDINALITY column, which operates similar to an autoincrementing primary key.

    +
    column(name, type, opts={}) +

    Return a normal column that uses the given type.

    +
    exists(name, type, opts={}) +

    Return a boolean column for whether the JSON path yields any values.

    +
    nested(path, &block) +

    Extract nested data from the result set at the given path. This block is treated the same as a json_table block, and arbitrary levels of nesting are supported.

    +
    + +

    The column method supports the following options:

    +
    :path +

    JSON path to the object (the default is $.NAME, where NAME is the name of the column).

    +
    :format +

    Set to :json to use FORMAT JSON, when you expect the value to be a valid JSON object.

    +
    :on_empty, :on_error +

    How to handle case where JSON path evaluation is empty or results in an error. Values supported are:

    +
    :empty_array +

    Return empty array (requires format: :json)

    +
    :empty_object +

    Return empty object (requires format: :json)

    +
    :error +

    Raise a DatabaseError

    +
    :null +

    Return nil (NULL)

    +
    +
    :wrapper +

    How to wrap returned values:

    +
    true, :unconditional +

    Always wrap returning values in an array

    +
    :conditional +

    Only wrap multiple return values in an array

    +
    :keep_quotes +

    Wrap scalar strings in quotes

    +
    :omit_quotes +

    Do not wrap scalar strings in quotes

    +
    +
    + +

    The exists method supports the following options:

    +
    :path +

    JSON path to the object (same as column option)

    +
    :on_error +

    How to handle case where JSON path evaluation results in an error. Values supported are:

    +
    :error +

    Raise a DatabaseError

    +
    true +

    Return true

    +
    false +

    Return false

    +
    :null +

    Return nil (NULL)

    +
    +
    + +

    Inside the block, methods for Ruby class names are also supported, allowing you to use syntax such as:

    + +
    json_op.table('$.a') do
    +  String :b
    +  Integer :c, path: '$.d'
    +end
    +
    + +

    One difference between this method and Database#create_table is that method_missing is not supported inside the block. Use the column method for PostgreSQL types that are not mapped to Ruby classes.

    + +
    +
    + +[show source] + +
        # File lib/sequel/extensions/pg_json_ops.rb
    +452 def table(path, opts=OPTS, &block)
    +453   JSONTableOp.new(self, path, opts, &block)
    +454 end
    @@ -669,9 +769,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -371 def to_record
    -372   function(:to_record)
    -373 end
    +460 def to_record +461 function(:to_record) +462 end
    @@ -693,9 +793,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -379 def to_recordset
    -380   function(:to_recordset)
    -381 end
    +468 def to_recordset +469 function(:to_recordset) +470 end
    @@ -717,9 +817,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -386 def typeof
    -387   function(:typeof)
    -388 end
    +475 def typeof +476 function(:typeof) +477 end
    @@ -761,14 +861,14 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -409 def value(path=(no_args_given = true), opts=OPTS)
    -410   if no_args_given
    -411     # Act as SQL::Wrapper#value
    -412     super()
    -413   else
    -414     Sequel::SQL::StringExpression.new(:NOOP, JSONValueOp.new(self, path, opts))
    -415   end
    -416 end
    +498 def value(path=(no_args_given = true), opts=OPTS) +499 if no_args_given +500 # Act as SQL::Wrapper#value +501 super() +502 else +503 Sequel::SQL::StringExpression.new(:NOOP, JSONValueOp.new(self, path, opts)) +504 end +505 end
    diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONExistsOp.html b/rdoc-plugins/classes/Sequel/Postgres/JSONExistsOp.html index a07d4f6c2..14397db1b 100644 --- a/rdoc-plugins/classes/Sequel/Postgres/JSONExistsOp.html +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONExistsOp.html @@ -122,13 +122,13 @@

    Public Class methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -817 def initialize(expr, path, opts=OPTS)
    -818   @expr = expr
    -819   @path = path
    -820   @passing = opts[:passing]
    -821   @on_error = opts[:on_error]
    -822   freeze
    -823 end
    +906 def initialize(expr, path, opts=OPTS) +907 @expr = expr +908 @path = path +909 @passing = opts[:passing] +910 @on_error = opts[:on_error] +911 freeze +912 end

    Public Instance methods

    @@ -148,11 +148,11 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -834 def sequel_ast_transform(transformer)
    -835   opts = {}
    -836   transform_opts(transformer, opts)
    -837   self.class.new(transformer.call(@expr), @path, opts)
    -838 end
    +923 def sequel_ast_transform(transformer) +924 opts = {} +925 transform_opts(transformer, opts) +926 self.class.new(transformer.call(@expr), @path, opts) +927 end
    @@ -171,12 +171,12 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -826 def to_s_append(ds, sql)
    -827   to_s_append_function_name(ds, sql)
    -828   to_s_append_args_passing(ds, sql)
    -829   to_s_append_on_error(ds, sql)
    -830   sql << ')'
    -831 end
    +915 def to_s_append(ds, sql) +916 to_s_append_function_name(ds, sql) +917 to_s_append_args_passing(ds, sql) +918 to_s_append_on_error(ds, sql) +919 sql << ')' +920 end
    diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONHash.html b/rdoc-plugins/classes/Sequel/Postgres/JSONHash.html index 62745a570..3cc567277 100644 --- a/rdoc-plugins/classes/Sequel/Postgres/JSONHash.html +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONHash.html @@ -68,9 +68,9 @@

    Public Instance methods

    [show source]
         # File lib/sequel/extensions/pg_json_ops.rb
    -1063 def op
    -1064   JSONOp.new(self)
    -1065 end
    +1369 def op +1370 JSONOp.new(self) +1371 end diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONOp.html b/rdoc-plugins/classes/Sequel/Postgres/JSONOp.html index 1bb6e044a..5e2e00d70 100644 --- a/rdoc-plugins/classes/Sequel/Postgres/JSONOp.html +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONOp.html @@ -70,9 +70,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/extensions/pg_json_ops.rb
    -458 def pg_json
    -459   self
    -460 end
    +547 def pg_json +548 self +549 end diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONOpMethods.html b/rdoc-plugins/classes/Sequel/Postgres/JSONOpMethods.html index 8059a318c..4b551354e 100644 --- a/rdoc-plugins/classes/Sequel/Postgres/JSONOpMethods.html +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONOpMethods.html @@ -65,9 +65,9 @@

    Public Instance methods

    [show source]
         # File lib/sequel/extensions/pg_json_ops.rb
    -1038 def pg_json
    -1039   JSONOp.new(self)
    -1040 end
    +1344 def pg_json +1345 JSONOp.new(self) +1346 end
    @@ -86,9 +86,9 @@

    Public Instance methods

    [show source]
         # File lib/sequel/extensions/pg_json_ops.rb
    -1044 def pg_jsonb
    -1045   JSONBOp.new(self)
    -1046 end
    +1350 def pg_jsonb +1351 JSONBOp.new(self) +1352 end
    diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONQueryOp.html b/rdoc-plugins/classes/Sequel/Postgres/JSONQueryOp.html index 4ce12218c..8069a8cf9 100644 --- a/rdoc-plugins/classes/Sequel/Postgres/JSONQueryOp.html +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONQueryOp.html @@ -90,10 +90,10 @@

    Public Class methods

    [show source]
         # File lib/sequel/extensions/pg_json_ops.rb
    -1004 def initialize(expr, path, opts=OPTS)
    -1005   @wrapper = opts[:wrapper]
    -1006   super
    -1007 end
    +1093 def initialize(expr, path, opts=OPTS) +1094 @wrapper = opts[:wrapper] +1095 super +1096 end diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONTableOp.html b/rdoc-plugins/classes/Sequel/Postgres/JSONTableOp.html new file mode 100644 index 000000000..37b0fd79d --- /dev/null +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONTableOp.html @@ -0,0 +1,179 @@ + + + +Sequel::Postgres::JSONTableOp + + + + + + +
    +
    +

    class +Sequel::Postgres::JSONTableOp +

    +
      +
    1. +lib/sequel/extensions/pg_json_ops.rb +
    2. +
    +
    +Superclass: +Expression +
    +
    +
    +
    +
    +

    Object representing json_table calls

    +
    +
    +

    Methods

    +

    Public Class

    +
      +
    1. new
    2. +
    +

    Public Instance

    +
      +
    1. sequel_ast_transform
    2. +
    3. to_s_append
    4. +
    +
    +
    +
    +
    +

    Classes and Modules

    +
      +
    1. Sequel::Postgres::JSONTableOp::ColumnDSL
    2. +
    +
    +
    +
    +

    Public Class methods

    +
    + +
    +new(expr, path, opts=OPTS, &block) + +
    +
    + +

    See JSONBaseOp#table for documentation on the options.

    + +
    +
    + +[show source] + +
         # File lib/sequel/extensions/pg_json_ops.rb
    +1208 def initialize(expr, path, opts=OPTS, &block)
    +1209   @expr = expr
    +1210   @path = path
    +1211   @passing = opts[:passing]
    +1212   @on_error = opts[:on_error]
    +1213   @columns = opts[:_columns] || ColumnDSL.columns(&block)
    +1214   freeze
    +1215 end
    +
    +
    +

    Public Instance methods

    +
    + +
    +sequel_ast_transform(transformer) + +
    +
    + +

    Support transforming of json_table expression

    + +
    +
    + +[show source] + +
         # File lib/sequel/extensions/pg_json_ops.rb
    +1244 def sequel_ast_transform(transformer)
    +1245   opts = {:on_error=>@on_error, :_columns=>@columns}
    +1246 
    +1247   if @passing
    +1248     passing = opts[:passing] = {}
    +1249     @passing.each do |k, v|
    +1250       passing[k] = transformer.call(v)
    +1251     end
    +1252   end
    +1253 
    +1254   self.class.new(transformer.call(@expr), @path, opts)
    +1255 end
    +
    +
    +
    + +
    +to_s_append(ds, sql) + +
    +
    + +

    Append the json_table function call expression to the SQL

    + +
    +
    + +[show source] + +
         # File lib/sequel/extensions/pg_json_ops.rb
    +1218 def to_s_append(ds, sql)
    +1219   sql << 'json_table('
    +1220   ds.literal_append(sql, @expr)
    +1221   sql << ', '
    +1222   default_literal_append(ds, sql, @path)
    +1223 
    +1224   if (passing = @passing) && !passing.empty?
    +1225     sql << ' PASSING '
    +1226     comma = false
    +1227     passing.each do |k, v|
    +1228       if comma
    +1229         sql << ', '
    +1230       else
    +1231         comma = true
    +1232       end
    +1233       ds.literal_append(sql, v)
    +1234       sql << " AS " << k.to_s
    +1235     end
    +1236   end
    +1237 
    +1238   to_s_append_columns(ds, sql, @columns)
    +1239   sql << TABLE_ON_ERROR_SQL.fetch(@on_error) if @on_error
    +1240   sql << ')'
    +1241 end
    +
    +
    +
    +
    + +
    +
    + + +
    + + + diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONTableOp/ColumnDSL.html b/rdoc-plugins/classes/Sequel/Postgres/JSONTableOp/ColumnDSL.html new file mode 100644 index 000000000..229aacd43 --- /dev/null +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONTableOp/ColumnDSL.html @@ -0,0 +1,240 @@ + + + +Sequel::Postgres::JSONTableOp::ColumnDSL + + + + + + +
    +
    +

    class +Sequel::Postgres::JSONTableOp::ColumnDSL +

    +
      +
    1. +lib/sequel/extensions/pg_json_ops.rb +
    2. +
    +
    +Superclass: +Object +
    +
    +
    +
    +
    +

    Class used to evaluate json_table blocks and nested blocks

    +
    +
    +

    Methods

    +

    Public Class

    +
      +
    1. columns
    2. +
    3. new
    4. +
    +

    Public Instance

    +
      +
    1. Bignum
    2. +
    3. column
    4. +
    5. columns
    6. +
    7. exists
    8. +
    9. nested
    10. +
    11. ordinality
    12. +
    +
    +
    +
    +
    +
    +

    Attributes

    +
    + + + + + + +
    +columns +[R] +

    Return array of column information recorded for the instance

    +
    +
    +
    +
    +

    Public Class methods

    +
    + +
    +columns(&block) + +
    +
    + +
    +
    + +[show source] + +
         # File lib/sequel/extensions/pg_json_ops.rb
    +1163 def self.columns(&block)
    +1164   new(&block).columns.freeze
    +1165 end
    +
    +
    +
    + +
    +new(&block) + +
    +
    + +
    +
    + +[show source] + +
         # File lib/sequel/extensions/pg_json_ops.rb
    +1167 def initialize(&block)
    +1168   @columns = []
    +1169   instance_exec(&block)
    +1170 end
    +
    +
    +

    Public Instance methods

    +
    + +
    +Bignum(name, opts=OPTS) + +
    +
    + +

    Include a bigint column

    + +
    +
    + +[show source] + +
         # File lib/sequel/extensions/pg_json_ops.rb
    +1193 def Bignum(name, opts=OPTS)
    +1194   @columns << [:column, name, :Bignum, opts].freeze
    +1195 end
    +
    +
    +
    + +
    +column(name, type, opts=OPTS) + +
    +
    + +

    Include a regular column with the given type

    + +
    +
    + +[show source] + +
         # File lib/sequel/extensions/pg_json_ops.rb
    +1178 def column(name, type, opts=OPTS)
    +1179   @columns << [:column, name, type, opts].freeze
    +1180 end
    +
    +
    +
    + +
    +exists(name, type, opts=OPTS) + +
    +
    + +

    Include an EXISTS column with the given type

    + +
    +
    + +[show source] + +
         # File lib/sequel/extensions/pg_json_ops.rb
    +1183 def exists(name, type, opts=OPTS)
    +1184   @columns << [:exists, name, type, opts].freeze
    +1185 end
    +
    +
    +
    + +
    +nested(path, &block) + +
    +
    + +

    Include a nested set of columns at the given path.

    + +
    +
    + +[show source] + +
         # File lib/sequel/extensions/pg_json_ops.rb
    +1188 def nested(path, &block)
    +1189   @columns << [:nested, path, ColumnDSL.columns(&block)].freeze
    +1190 end
    +
    +
    +
    + +
    +ordinality(name) + +
    +
    + +

    Include a FOR ORDINALITY column

    + +
    +
    + +[show source] + +
         # File lib/sequel/extensions/pg_json_ops.rb
    +1173 def ordinality(name)
    +1174   @columns << [:ordinality, name].freeze
    +1175 end
    +
    +
    +
    +
    + +
    +
    + + +
    + + + diff --git a/rdoc-plugins/classes/Sequel/Postgres/JSONValueOp.html b/rdoc-plugins/classes/Sequel/Postgres/JSONValueOp.html index e850ce1fc..41c70c81c 100644 --- a/rdoc-plugins/classes/Sequel/Postgres/JSONValueOp.html +++ b/rdoc-plugins/classes/Sequel/Postgres/JSONValueOp.html @@ -99,12 +99,12 @@

    Public Class methods

    [show source] -
        # File lib/sequel/extensions/pg_json_ops.rb
    -911 def initialize(expr, path, opts=OPTS)
    -912   @returning = opts[:returning]
    -913   @on_empty = opts[:on_empty]
    -914   super
    -915 end
    +
         # File lib/sequel/extensions/pg_json_ops.rb
    +1000 def initialize(expr, path, opts=OPTS)
    +1001   @returning = opts[:returning]
    +1002   @on_empty = opts[:on_empty]
    +1003   super
    +1004 end
    diff --git a/rdoc-plugins/classes/Sequel/SQL/Builders.html b/rdoc-plugins/classes/Sequel/SQL/Builders.html index a929c7970..2e1cbb213 100644 --- a/rdoc-plugins/classes/Sequel/SQL/Builders.html +++ b/rdoc-plugins/classes/Sequel/SQL/Builders.html @@ -393,14 +393,14 @@

    Public Instance methods

    [show source]
         # File lib/sequel/extensions/pg_json_ops.rb
    -1088 def pg_json_op(v)
    -1089   case v
    -1090   when Postgres::JSONOp
    -1091     v
    -1092   else
    -1093     Postgres::JSONOp.new(v)
    -1094   end
    -1095 end
    +1394 def pg_json_op(v) +1395 case v +1396 when Postgres::JSONOp +1397 v +1398 else +1399 Postgres::JSONOp.new(v) +1400 end +1401 end
    @@ -478,14 +478,14 @@

    Public Instance methods

    [show source]
         # File lib/sequel/extensions/pg_json_ops.rb
    -1098 def pg_jsonb_op(v)
    -1099   case v
    -1100   when Postgres::JSONBOp
    -1101     v
    -1102   else
    -1103     Postgres::JSONBOp.new(v)
    -1104   end
    -1105 end
    +1404 def pg_jsonb_op(v) +1405 case v +1406 when Postgres::JSONBOp +1407 v +1408 else +1409 Postgres::JSONBOp.new(v) +1410 end +1411 end
    diff --git a/rdoc-plugins/created.rid b/rdoc-plugins/created.rid index 2cba12ee1..16128deb6 100644 --- a/rdoc-plugins/created.rid +++ b/rdoc-plugins/created.rid @@ -1,4 +1,4 @@ -Sun, 01 Sep 2024 09:23:11 -0700 +Tue, 01 Oct 2024 09:00:04 -0700 lib/sequel/extensions/_model_constraint_validations.rb Tue, 24 Jan 2017 12:27:29 -0800 lib/sequel/extensions/_model_pg_row.rb Tue, 11 Oct 2022 13:37:12 -0700 lib/sequel/extensions/_pretty_table.rb Mon, 17 Oct 2022 09:39:14 -0700 @@ -17,6 +17,7 @@ lib/sequel/extensions/constraint_validations.rb Fri, 21 Oct 2022 08:19:04 -0700 lib/sequel/extensions/core_extensions.rb Tue, 01 Aug 2017 08:12:00 -0700 lib/sequel/extensions/core_refinements.rb Mon, 20 Dec 2021 12:57:43 -0800 lib/sequel/extensions/current_datetime_timestamp.rb Tue, 01 Aug 2017 08:12:00 -0700 +lib/sequel/extensions/dataset_run.rb Thu, 05 Sep 2024 15:28:33 -0700 lib/sequel/extensions/dataset_source_alias.rb Thu, 11 Feb 2016 15:50:14 -0800 lib/sequel/extensions/date_arithmetic.rb Fri, 21 Oct 2022 08:19:04 -0700 lib/sequel/extensions/date_parse_input_handler.rb Fri, 17 Dec 2021 16:59:47 -0800 @@ -57,7 +58,7 @@ lib/sequel/extensions/pg_inet.rb Sun, 30 Oct 2022 19:13:54 -0700 lib/sequel/extensions/pg_inet_ops.rb Sat, 18 Dec 2021 12:49:34 -0800 lib/sequel/extensions/pg_interval.rb Sun, 30 Oct 2022 19:13:54 -0700 lib/sequel/extensions/pg_json.rb Sun, 30 Oct 2022 19:13:54 -0700 -lib/sequel/extensions/pg_json_ops.rb Thu, 15 Aug 2024 12:59:16 -0700 +lib/sequel/extensions/pg_json_ops.rb Sun, 29 Sep 2024 11:29:00 -0700 lib/sequel/extensions/pg_loose_count.rb Mon, 24 May 2021 12:25:38 -0700 lib/sequel/extensions/pg_multirange.rb Thu, 13 Apr 2023 12:51:52 -0700 lib/sequel/extensions/pg_range.rb Wed, 06 Dec 2023 16:41:40 -0800 diff --git a/rdoc-plugins/files/lib/sequel/extensions/dataset_run_rb.html b/rdoc-plugins/files/lib/sequel/extensions/dataset_run_rb.html new file mode 100644 index 000000000..4921d9846 --- /dev/null +++ b/rdoc-plugins/files/lib/sequel/extensions/dataset_run_rb.html @@ -0,0 +1,69 @@ + + + +dataset_run.rb + + + + + + +
    +
    +

    dataset_run.rb +

    +
    +lib/sequel/extensions/dataset_run.rb +
    +
    +Last Update: +2024-09-05 15:28:33 -0700 +
    +
    +
    +
    +
    +

    The dataset_run extension is designed for cases where you want to use dataset methods to build a query, but want to run that query without returning a result. The most common need would be to easily use placeholders in an SQL string, which Database#run does not support directly.

    + +

    You can load this extension into specific datasets:

    + +
    ds = DB["GRANT SELECT ON ? TO ?", :table, :user]
    +ds = ds.extension(:dataset_run)
    +ds.run
    +
    + +

    Or you can load it into all of a database’s datasets, which is probably the desired behavior if you are using this extension:

    + +
    DB.extension(:dataset_run)
    +DB["GRANT SELECT ON ? TO ?", :table, :user].run
    +
    + +

    Related module: Sequel::DatasetRun

    +
    +
    +
    + +
    +
    + + +
    + + + diff --git a/rdoc-plugins/files/lib/sequel/extensions/pg_json_ops_rb.html b/rdoc-plugins/files/lib/sequel/extensions/pg_json_ops_rb.html index 29b3a0909..93edf2823 100644 --- a/rdoc-plugins/files/lib/sequel/extensions/pg_json_ops_rb.html +++ b/rdoc-plugins/files/lib/sequel/extensions/pg_json_ops_rb.html @@ -31,7 +31,7 @@

    pg_json_ops.rb

    Last Update: -2024-08-15 12:59:16 -0700 +2024-09-29 11:29:00 -0700
    @@ -122,6 +122,8 @@

    pg_json_ops.rb j.path_query_first('$.foo') # jsonb_path_query_first(jsonb_column, '$.foo') +

    For the PostgreSQL 12+ SQL/JSON path functions, one argument is required (path) and two more arguments are optional (vars and silent). path specifies the JSON path. vars specifies a hash or a string in JSON format of named variables to be substituted in path. silent specifies whether errors are suppressed. By default, errors are not suppressed.

    +

    On PostgreSQL 13+ timezone-aware SQL/JSON path functions and operators are supported:

    j.path_exists_tz!('$.foo')     # jsonb_path_exists_tz(jsonb_column, '$.foo')
    @@ -131,8 +133,6 @@ 

    pg_json_ops.rb j.path_query_first_tz('$.foo') # jsonb_path_query_first_tz(jsonb_column, '$.foo')

    -

    For the PostgreSQL 12+ SQL/JSON path functions, one argument is required (path) and two more arguments are optional (vars and silent). path specifies the JSON path. vars specifies a hash or a string in JSON format of named variables to be substituted in path. silent specifies whether errors are suppressed. By default, errors are not suppressed.

    -

    On PostgreSQL 14+, The JSONB [] method will use subscripts instead of being the same as get, if the value being wrapped is an identifer:

    Sequel.pg_jsonb_op(:jsonb_column)[1]       # jsonb_column[1]
    @@ -159,8 +159,8 @@ 

    pg_json_ops.rb j.is_json(type: :object) # j IS JSON OBJECT j.is_json(type: :object, unique: true) # j IS JSON OBJECT WITH UNIQUE j.is_not_json # j IS NOT JSON -j.is_not_json(type: :array) # j IS NOT JSON ARRAY -j.is_not_json(unique: true) # j IS NOT JSON WITH UNIQUE +j.is_not_json(type: :array) # j IS NOT JSON ARRAY +j.is_not_json(unique: true) # j IS NOT JSON WITH UNIQUE

    On PostgreSQL 17+, the additional JSON functions are supported (see method documentation for additional options):

    @@ -172,6 +172,29 @@

    pg_json_ops.rb j.exists('$.foo', passing: {a: 1}) # json_exists(jsonb_column, '$.foo' PASSING 1 AS a) j.value('$.foo', returning: Time) # json_value(jsonb_column, '$.foo' RETURNING timestamp) j.query('$.foo', wrapper: true) # json_query(jsonb_column, '$.foo' WITH WRAPPER) + +j.table('$.foo') do + String :bar + Integer :baz +end +# json_table("jsonb_column", '$.foo' COLUMNS("bar" text, "baz" integer)) + +j.table('$.foo', passing: {a: 1}) do + ordinality :id + String :bar, format: :json, on_error: :empty_object + nested '$.baz' do + Integer :q, path: '$.quux', on_empty: :error + end + exists :x, Date, on_error: false +end +# json_table(jsonb_column, '$.foo' PASSING 1 AS a COLUMNS( +# "id" FOR ORDINALITY, +# "bar" text FORMAT JSON EMPTY OBJECT ON ERROR, +# NESTED '$.baz' COLUMNS( +# "q" integer PATH '$.quux' ERROR ON EMPTY +# ), +# "d" date EXISTS FALSE ON ERROR +# ))

    If you are also using the pg_json extension, you should load it before loading this extension. Doing so will allow you to use the op method on JSONHash, JSONHarray, JSONBHash, and JSONBArray, allowing you to perform json/jsonb operations on json/jsonb literals.

    diff --git a/rdoc-plugins/fr_class_index.html b/rdoc-plugins/fr_class_index.html index 69c77cd5f..208337eda 100644 --- a/rdoc-plugins/fr_class_index.html +++ b/rdoc-plugins/fr_class_index.html @@ -67,6 +67,7 @@ Sequel::DatasetPagination Sequel::DatasetPrinter Sequel::DatasetQuery +Sequel::DatasetRun Sequel::DateParseInputHandler Sequel::DateTimeParseToTime Sequel::DuplicateColumnError @@ -417,7 +418,9 @@ Sequel::Postgres::JSONOp Sequel::Postgres::JSONOpMethods Sequel::Postgres::JSONQueryOp -Sequel::Postgres::JSONValueOp +
    Sequel::Postgres::JSONTableOp +Sequel::Postgres::JSONTableOp::ColumnDSL +
    Sequel::Postgres::JSONValueOp Sequel::Postgres::LooseCount
    Sequel::Postgres::PGArray Sequel::Postgres::PGArray::Creator diff --git a/rdoc-plugins/fr_file_index.html b/rdoc-plugins/fr_file_index.html index 3cbfdbf3c..e2508329f 100644 --- a/rdoc-plugins/fr_file_index.html +++ b/rdoc-plugins/fr_file_index.html @@ -29,6 +29,7 @@
  • core_extensions.rb
  • core_refinements.rb
  • current_datetime_timestamp.rb
  • +
  • dataset_run.rb
  • dataset_source_alias.rb
  • date_arithmetic.rb
  • date_parse_input_handler.rb
  • diff --git a/rdoc-plugins/fr_method_index.html b/rdoc-plugins/fr_method_index.html index 0538526fc..7fd8746fb 100644 --- a/rdoc-plugins/fr_method_index.html +++ b/rdoc-plugins/fr_method_index.html @@ -17,8 +17,8 @@
    1. ::columns (Sequel::Postgres::PGRow::HashRow)
    2. -
    3. ::db_type (Sequel::Postgres::PGRow::ArrayRow)
    4. ::db_type (Sequel::Postgres::PGRow::HashRow)
    5. +
    6. ::db_type (Sequel::Postgres::PGRow::ArrayRow)
    7. ::plurals (String::Inflections)
    8. ::singulars (String::Inflections)
    9. ::uncountables (String::Inflections)
    10. @@ -50,6 +50,7 @@
    11. #column_oids (Sequel::Postgres::PGRow::Parser)
    12. #columns (Sequel::Postgres::PGRow::Parser)
    13. #columns (Sequel::Postgres::PGRow::HashRow)
    14. +
    15. #columns (Sequel::Postgres::JSONTableOp::ColumnDSL)
    16. #comment_hashes (Database::SQLComments)
    17. #compositions (Sequel::Plugins::Composition::ClassMethods)
    18. #connection (Sequel::TransactionConnectionValidator::DisconnectRetry)
    19. @@ -57,14 +58,14 @@
    20. #connection_expiration_timeout (Sequel::ConnectionExpiration)
    21. #connection_validation_timeout (Sequel::ConnectionValidator)
    22. #constraint_validation_reflections (Sequel::Plugins::ConstraintValidations::ClassMethods)
    23. -
    24. #constraint_validations (Sequel::Plugins::ConstraintValidations::DatabaseMethods)
    25. #constraint_validations (Sequel::Plugins::ConstraintValidations::ClassMethods)
    26. -
    27. #constraint_validations_table (Sequel::Plugins::ConstraintValidations::ClassMethods)
    28. +
    29. #constraint_validations (Sequel::Plugins::ConstraintValidations::DatabaseMethods)
    30. #constraint_validations_table (Sequel::ConstraintValidations)
    31. +
    32. #constraint_validations_table (Sequel::Plugins::ConstraintValidations::ClassMethods)
    33. #convert_infinite_timestamps (Sequel::Postgres::ExtendedDateSupport)
    34. -
    35. #converter (Sequel::Postgres::PGRow::Parser)
    36. #converter (Sequel::Postgres::PGArray::Creator)
    37. #converter (Sequel::Postgres::PGRange::Parser)
    38. +
    39. #converter (Sequel::Postgres::PGRow::Parser)
    40. #create_timestamp_field (Sequel::Plugins::Timestamps::ClassMethods)
    41. #csv_serializer_opts (Sequel::Plugins::CsvSerializer::ClassMethods)
    42. #cti_ignore_subclass_columns (Sequel::Plugins::ClassTableInheritance::ClassMethods)
    43. @@ -78,11 +79,11 @@
    44. #database_error (Sequel::TransactionConnectionValidator::DisconnectRetry)
    45. #dataset (Sequel::Dataset::Query)
    46. #db (Sequel::Migrator)
    47. -
    48. #db_type (Sequel::Postgres::PGMultiRange)
    49. -
    50. #db_type (Sequel::Postgres::PGRow::HashRow)
    51. -
    52. #db_type (Sequel::Postgres::PGRow::ArrayRow)
    53. #db_type (Sequel::Postgres::PGRange::Parser)
    54. +
    55. #db_type (Sequel::Postgres::PGRow::HashRow)
    56. #db_type (Sequel::Postgres::PGRange)
    57. +
    58. #db_type (Sequel::Postgres::PGRow::ArrayRow)
    59. +
    60. #db_type (Sequel::Postgres::PGMultiRange)
    61. #default_values (Sequel::Plugins::DefaultsSetter::ClassMethods)
    62. #deserialization_map (Sequel::Plugins::Serialization::ClassMethods)
    63. #direction (Sequel::IntegerMigrator)
    64. @@ -93,8 +94,8 @@
    65. #expr (Sequel::Postgres::JSONExistsOp)
    66. #expr (Sequel::SQL::DateAdd)
    67. #expr (Sequel::SQL::StringAgg)
    68. -
    69. #expression (Sequel::Postgres::HStoreSubscriptOp)
    70. #expression (Sequel::Postgres::JSONBSubscriptOp)
    71. +
    72. #expression (Sequel::Postgres::HStoreSubscriptOp)
    73. #files (Sequel::Migrator)
    74. #forced_encoding (Sequel::Plugins::ForceEncoding::ClassMethods)
    75. #get_column_conflicts (Sequel::Plugins::ColumnConflicts::ClassMethods)
    76. @@ -162,95 +163,96 @@
    77. #uuid_field (Sequel::Plugins::Uuid::ClassMethods)
    78. #validation_context (Sequel::Plugins::ValidationContexts::InstanceMethods)
    79. #validation_reflections (Sequel::Plugins::ValidationClassMethods::ClassMethods)
    80. -
    81. #validations (Sequel::Plugins::ValidationClassMethods::ClassMethods)
    82. #validations (Sequel::ConstraintValidations::CreateTableGeneratorMethods)
    83. +
    84. #validations (Sequel::Plugins::ValidationClassMethods::ClassMethods)
    85. #wrap_json_primitives (Sequel::Postgres::JSONDatabaseMethods)
    86. #wrapper (Sequel::Postgres::JSONQueryOp)
    87. ::_load (Sequel::Postgres::HStore)
    88. +
    89. ::apply (Sequel::Plugins::ColumnEncryption)
    90. +
    91. ::apply (Sequel::Plugins::StringStripper)
    92. +
    93. ::apply (Sequel::Plugins::AutoValidationsConstraintValidationsPresenceMessage)
    94. ::apply (Sequel::Plugins::Subclasses)
    95. -
    96. ::apply (Sequel::Migration)
    97. -
    98. ::apply (Sequel::Migrator)
    99. -
    100. ::apply (Sequel::Plugins::Serialization)
    101. -
    102. ::apply (Sequel::Plugins::ConstraintValidations)
    103. -
    104. ::apply (Sequel::Plugins::Finder)
    105. +
    106. ::apply (Sequel::Plugins::SubsetConditions)
    107. ::apply (Sequel::Plugins::PgXminOptimisticLocking)
    108. -
    109. ::apply (Sequel::Plugins::StringStripper)
    110. +
    111. ::apply (Sequel::Plugins::PreparedStatements)
    112. ::apply (Sequel::Plugins::InvertedSubsets)
    113. -
    114. ::apply (Sequel::Plugins::UnusedAssociations)
    115. -
    116. ::apply (Sequel::Plugins::ValidateAssociated)
    117. -
    118. ::apply (Sequel::Plugins::DelayAddAssociation)
    119. -
    120. ::apply (Sequel::Plugins::ValidationClassMethods)
    121. +
    122. ::apply (Sequel::Plugins::ClassTableInheritance)
    123. ::apply (Sequel::Plugins::HookClassMethods)
    124. -
    125. ::apply (Sequel::Plugins::OptimisticLockingBase)
    126. +
    127. ::apply (Sequel::Plugins::AssociationDependencies)
    128. +
    129. ::apply (Sequel::Plugins::Touch)
    130. +
    131. ::apply (Sequel::Plugins::ColumnConflicts)
    132. +
    133. ::apply (Sequel::Migration)
    134. ::apply (Sequel::Plugins::InputTransformer)
    135. +
    136. ::apply (Sequel::Plugins::LazyAttributes)
    137. +
    138. ::apply (Sequel::Plugins::SerializationModificationDetection)
    139. +
    140. ::apply (Sequel::Plugins::AutoValidations)
    141. +
    142. ::apply (Sequel::Plugins::Finder)
    143. +
    144. ::apply (Sequel::Plugins::ConstraintValidations)
    145. +
    146. ::apply (Sequel::Plugins::MssqlOptimisticLocking)
    147. ::apply (Sequel::Plugins::Composition)
    148. -
    149. ::apply (Sequel::Plugins::PgArrayAssociations)
    150. -
    151. ::apply (Sequel::Plugins::Tree)
    152. -
    153. ::apply (Sequel::Plugins::PreparedStatementsSafe)
    154. -
    155. ::apply (Sequel::Plugins::OptimisticLocking)
    156. -
    157. ::apply (Sequel::Plugins::SubsetConditions)
    158. -
    159. ::apply (Sequel::Plugins::ColumnEncryption)
    160. +
    161. ::apply (Sequel::Plugins::UnusedAssociations)
    162. ::apply (Sequel::Plugins::NestedAttributes)
    163. -
    164. ::apply (Sequel::Plugins::MssqlOptimisticLocking)
    165. -
    166. ::apply (Sequel::Plugins::AssociationDependencies)
    167. +
    168. ::apply (Sequel::Plugins::ValidateAssociated)
    169. +
    170. ::apply (Sequel::Plugins::OptimisticLocking)
    171. +
    172. ::apply (Sequel::Plugins::Serialization)
    173. +
    174. ::apply (Sequel::Plugins::OptimisticLockingBase)
    175. +
    176. ::apply (Sequel::Migrator)
    177. ::apply (Sequel::Plugins::RcteTree)
    178. -
    179. ::apply (Sequel::Plugins::AutoValidations)
    180. -
    181. ::apply (Sequel::Plugins::AutoValidationsConstraintValidationsPresenceMessage)
    182. -
    183. ::apply (Sequel::Plugins::ColumnConflicts)
    184. +
    185. ::apply (Sequel::Plugins::PreparedStatementsSafe)
    186. +
    187. ::apply (Sequel::Plugins::ValidationClassMethods)
    188. +
    189. ::apply (Sequel::Plugins::PgArrayAssociations)
    190. +
    191. ::apply (Sequel::Plugins::DelayAddAssociation)
    192. +
    193. ::apply (Sequel::Plugins::Tree)
    194. ::apply (Sequel::Plugins::ValidationHelpersGenericTypeMessages)
    195. -
    196. ::apply (Sequel::Plugins::SerializationModificationDetection)
    197. -
    198. ::apply (Sequel::Plugins::LazyAttributes)
    199. -
    200. ::apply (Sequel::Plugins::ClassTableInheritance)
    201. -
    202. ::apply (Sequel::Plugins::Touch)
    203. -
    204. ::apply (Sequel::Plugins::PreparedStatements)
    205. ::check_current (Sequel::Migrator)
    206. ::clear (String::Inflections)
    207. -
    208. ::configure (Sequel::Plugins::PrimaryKeyLookupCheckValues)
    209. -
    210. ::configure (Sequel::Plugins::RequireValidSchema)
    211. -
    212. ::configure (Sequel::Plugins::InstanceSpecificDefault)
    213. -
    214. ::configure (Sequel::Plugins::JsonSerializer)
    215. -
    216. ::configure (Sequel::Plugins::Caching)
    217. -
    218. ::configure (Sequel::Plugins::Touch)
    219. -
    220. ::configure (Sequel::Plugins::BooleanSubsets)
    221. -
    222. ::configure (Sequel::Plugins::BooleanReaders)
    223. -
    224. ::configure (Sequel::Plugins::ClassTableInheritance)
    225. +
    226. ::columns (Sequel::Postgres::JSONTableOp::ColumnDSL)
    227. ::configure (Sequel::Plugins::Timestamps)
    228. -
    229. ::configure (Sequel::Plugins::LazyAttributes)
    230. -
    231. ::configure (Sequel::Plugins::List)
    232. -
    233. ::configure (Sequel::Plugins::AutoValidationsConstraintValidationsPresenceMessage)
    234. -
    235. ::configure (Sequel::Plugins::ColumnConflicts)
    236. ::configure (Sequel::Plugins::AutoValidations)
    237. -
    238. ::configure (Sequel::Plugins::TableSelect)
    239. -
    240. ::configure (Sequel::Plugins::InstanceFilters)
    241. -
    242. ::configure (Sequel::Plugins::AssociationProxies)
    243. ::configure (Sequel::Plugins::AssociationDependencies)
    244. -
    245. ::configure (Sequel::Plugins::SingleTableInheritance)
    246. ::configure (Sequel::Plugins::InsertReturningSelect)
    247. -
    248. ::configure (Sequel::Plugins::MssqlOptimisticLocking)
    249. ::configure (Sequel::Plugins::InsertConflict)
    250. -
    251. ::configure (Sequel::Plugins::ColumnEncryption)
    252. -
    253. ::configure (Sequel::Plugins::Serialization)
    254. -
    255. ::configure (Sequel::Plugins::PreparedStatementsSafe)
    256. -
    257. ::configure (Sequel::Plugins::PgAutoConstraintValidations)
    258. -
    259. ::configure (Sequel::Plugins::OptimisticLocking)
    260. -
    261. ::configure (Sequel::Plugins::InputTransformer)
    262. -
    263. ::configure (Sequel::Plugins::ColumnSelect)
    264. ::configure (Sequel::Plugins::TypecastOnLoad)
    265. -
    266. ::configure (Sequel::Plugins::SkipSavingColumns)
    267. +
    268. ::configure (Sequel::Plugins::PgRow)
    269. +
    270. ::configure (Sequel::Plugins::StaticCacheCache)
    271. +
    272. ::configure (Sequel::Plugins::InputTransformer)
    273. +
    274. ::configure (Sequel::Plugins::CsvSerializer)
    275. ::configure (Sequel::Plugins::PgXminOptimisticLocking)
    276. +
    277. ::configure (Sequel::Plugins::AutoValidationsConstraintValidationsPresenceMessage)
    278. +
    279. ::configure (Sequel::Plugins::ConstraintValidations)
    280. +
    281. ::configure (Sequel::Plugins::PgAutoConstraintValidations)
    282. +
    283. ::configure (Sequel::Plugins::DefaultsSetter)
    284. +
    285. ::configure (Sequel::Plugins::BooleanReaders)
    286. +
    287. ::configure (Sequel::Plugins::SqlComments)
    288. +
    289. ::configure (Sequel::Plugins::PreparedStatementsSafe)
    290. +
    291. ::configure (Sequel::Plugins::ConcurrentEagerLoading)
    292. +
    293. ::configure (Sequel::Plugins::InstanceFilters)
    294. +
    295. ::configure (Sequel::Plugins::PrimaryKeyLookupCheckValues)
    296. ::configure (Sequel::Plugins::StringStripper)
    297. +
    298. ::configure (Sequel::Plugins::RequireValidSchema)
    299. +
    300. ::configure (Sequel::Plugins::AssociationProxies)
    301. +
    302. ::configure (Sequel::Plugins::OptimisticLocking)
    303. +
    304. ::configure (Sequel::Plugins::JsonSerializer)
    305. +
    306. ::configure (Sequel::Plugins::MssqlOptimisticLocking)
    307. +
    308. ::configure (Sequel::Plugins::SkipSavingColumns)
    309. +
    310. ::configure (Sequel::Plugins::Serialization)
    311. +
    312. ::configure (Sequel::Plugins::Uuid)
    313. +
    314. ::configure (Sequel::Plugins::ColumnEncryption)
    315. ::configure (Sequel::Plugins::ForceEncoding)
    316. -
    317. ::configure (Sequel::Plugins::ConcurrentEagerLoading)
    318. +
    319. ::configure (Sequel::Plugins::BooleanSubsets)
    320. +
    321. ::configure (Sequel::Plugins::Caching)
    322. +
    323. ::configure (Sequel::Plugins::List)
    324. +
    325. ::configure (Sequel::Plugins::StaticCache)
    326. +
    327. ::configure (Sequel::Plugins::LazyAttributes)
    328. ::configure (Sequel::Plugins::UnusedAssociations)
    329. -
    330. ::configure (Sequel::Plugins::StaticCacheCache)
    331. -
    332. ::configure (Sequel::Plugins::Uuid)
    333. -
    334. ::configure (Sequel::Plugins::ConstraintValidations)
    335. +
    336. ::configure (Sequel::Plugins::SingleTableInheritance)
    337. +
    338. ::configure (Sequel::Plugins::ColumnConflicts)
    339. +
    340. ::configure (Sequel::Plugins::InstanceSpecificDefault)
    341. +
    342. ::configure (Sequel::Plugins::Touch)
    343. ::configure (Sequel::Plugins::UpdateRefresh)
    344. -
    345. ::configure (Sequel::Plugins::SqlComments)
    346. -
    347. ::configure (Sequel::Plugins::CsvSerializer)
    348. -
    349. ::configure (Sequel::Plugins::DefaultsSetter)
    350. -
    351. ::configure (Sequel::Plugins::PgRow)
    352. -
    353. ::configure (Sequel::Plugins::StaticCache)
    354. +
    355. ::configure (Sequel::Plugins::ClassTableInheritance)
    356. +
    357. ::configure (Sequel::Plugins::TableSelect)
    358. +
    359. ::configure (Sequel::Plugins::ColumnSelect)
    360. ::core_extensions? (Sequel)
    361. ::create (Sequel::MigrationDSL)
    362. ::db_parse_json (Sequel::Postgres::JSONDatabaseMethods)
    363. @@ -261,30 +263,30 @@
    364. ::define_async_method (Sequel::Database::AsyncThreadPool::DatasetMethods)
    365. ::descendants (Sequel::Migration)
    366. ::empty (Sequel::Postgres::PGRange)
    367. -
    368. ::extended (Sequel::ConstraintValidations)
    369. -
    370. ::extended (Sequel::ServerLogging)
    371. -
    372. ::extended (Sequel::Postgres::Timestamptz)
    373. -
    374. ::extended (Sequel::SQLLogNormalizer)
    375. +
    376. ::extended (Sequel::Postgres::PGArray::DatabaseMethods)
    377. +
    378. ::extended (Sequel::ConnectionValidator)
    379. +
    380. ::extended (Sequel::DatabaseQuery)
    381. +
    382. ::extended (Sequel::ConstantSqlOverride::DatabaseMethods)
    383. +
    384. ::extended (Sequel::Database::AsyncThreadPool::DatabaseMethods)
    385. +
    386. ::extended (Database::SQLComments)
    387. +
    388. ::extended (Sequel::Postgres::ExtendedDateSupport)
    389. +
    390. ::extended (Sequel::Postgres::EnumDatabaseMethods)
    391. +
    392. ::extended (Sequel::Postgres::InetDatabaseMethods)
    393. ::extended (Sequel::Postgres::PGMultiRange::DatabaseMethods)
    394. +
    395. ::extended (Sequel::IdentifierMangling::DatabaseMethods)
    396. +
    397. ::extended (Sequel::IndexCaching)
    398. ::extended (Sequel::Postgres::HStore::DatabaseMethods)
    399. -
    400. ::extended (Database::SQLComments)
    401. +
    402. ::extended (Sequel::ConstraintValidations)
    403. +
    404. ::extended (Sequel::ServerLogging)
    405. ::extended (Sequel::ServerBlock)
    406. -
    407. ::extended (Sequel::Postgres::ExtendedDateSupport)
    408. -
    409. ::extended (Sequel::Postgres::JSONDatabaseMethods)
    410. -
    411. ::extended (Sequel::Postgres::PGArray::DatabaseMethods)
    412. +
    413. ::extended (Sequel::Postgres::IntervalDatabaseMethods)
    414. ::extended (Sequel::Postgres::PGRow::DatabaseMethods)
    415. -
    416. ::extended (Sequel::IndexCaching)
    417. -
    418. ::extended (Sequel::Database::AsyncThreadPool::DatabaseMethods)
    419. -
    420. ::extended (Sequel::ConstantSqlOverride::DatabaseMethods)
    421. -
    422. ::extended (Sequel::ConnectionValidator)
    423. +
    424. ::extended (Sequel::Postgres::JSONDatabaseMethods)
    425. +
    426. ::extended (Sequel::Postgres::AutoParameterize::DatabaseMethods)
    427. +
    428. ::extended (Sequel::SQLLogNormalizer)
    429. +
    430. ::extended (Sequel::Postgres::Timestamptz)
    431. ::extended (Sequel::ConnectionExpiration)
    432. -
    433. ::extended (Sequel::Postgres::IntervalDatabaseMethods)
    434. -
    435. ::extended (Sequel::Postgres::InetDatabaseMethods)
    436. -
    437. ::extended (Sequel::Postgres::EnumDatabaseMethods)
    438. -
    439. ::extended (Sequel::IdentifierMangling::DatabaseMethods)
    440. ::extended (Sequel::Postgres::PGRange::DatabaseMethods)
    441. -
    442. ::extended (Sequel::Postgres::AutoParameterize::DatabaseMethods)
    443. -
    444. ::extended (Sequel::DatabaseQuery)
    445. ::from_range (Sequel::Postgres::PGRange)
    446. ::inflections (String)
    447. ::inherited (Sequel::Migration)
    448. @@ -297,45 +299,47 @@
    449. ::literal_duration (Sequel::Postgres::IntervalDatabaseMethods)
    450. ::migration (Sequel)
    451. ::migrator_class (Sequel::Migrator)
    452. -
    453. ::new (Sequel::MigrationReverser)
    454. +
    455. ::new (Sequel::Postgres::JSONBSubscriptOp)
    456. +
    457. ::new (Sequel::Postgres::JSONTableOp)
    458. +
    459. ::new (Sequel::Postgres::JSONTableOp::ColumnDSL)
    460. +
    461. ::new (Sequel::Postgres::JSONValueOp)
    462. +
    463. ::new (Sequel::Postgres::PGArray)
    464. +
    465. ::new (Sequel::Plugins::AfterInitialize::InstanceMethods)
    466. +
    467. ::new (Sequel::Postgres::PGArray::Creator)
    468. +
    469. ::new (Sequel::Database::AsyncThreadPool::Proxy)
    470. ::new (Sequel::Database::AsyncThreadPool::PreemptableProxy)
    471. +
    472. ::new (Sequel::Postgres::PGArray::Parser)
    473. +
    474. ::new (Sequel::Postgres::PGMultiRange)
    475. ::new (Sequel::Database::AsyncThreadPool::BaseProxy)
    476. -
    477. ::new (Sequel::Postgres::PGMultiRange::Creator)
    478. -
    479. ::new (Sequel::MigrationDSL)
    480. -
    481. ::new (Sequel::Postgres::PGRow::Parser)
    482. ::new (Sequel::Migrator)
    483. -
    484. ::new (Sequel::SimpleMigration)
    485. -
    486. ::new (Sequel::Postgres::PGMultiRange)
    487. -
    488. ::new (Sequel::MigrationAlterTableReverser)
    489. +
    490. ::new (Sequel::Postgres::PGMultiRange::Creator)
    491. ::new (Sequel::Postgres::PGMultiRange::Parser)
    492. -
    493. ::new (Sequel::Dataset::Query)
    494. -
    495. ::new (Sequel::Postgres::AutoParameterize::PlaceholderLiteralizer)
    496. -
    497. ::new (Sequel::Postgres::PGArray::Parser)
    498. -
    499. ::new (Sequel::Postgres::HStoreSubscriptOp)
    500. -
    501. ::new (Sequel::Postgres::InetOp)
    502. -
    503. ::new (Sequel::ToDot)
    504. +
    505. ::new (Sequel::Postgres::JSONQueryOp)
    506. ::new (Sequel::Postgres::JSONExistsOp)
    507. ::new (Sequel::Postgres::PGRange)
    508. -
    509. ::new (Sequel::Database::AsyncThreadPool::Proxy)
    510. +
    511. ::new (Sequel::Postgres::AutoParameterize::PlaceholderLiteralizer)
    512. +
    513. ::new (Sequel::Postgres::PGRange::Parser)
    514. +
    515. ::new (Sequel::ConstraintValidations::Generator)
    516. +
    517. ::new (Sequel::Postgres::PGRow::Parser)
    518. +
    519. ::new (Sequel::MigrationReverser)
    520. +
    521. ::new (Sequel::SQL::DateAdd)
    522. +
    523. ::new (Sequel::SQL::EscapedLikeExpression)
    524. +
    525. ::new (Sequel::MigrationDSL)
    526. +
    527. ::new (Sequel::SQL::IsDistinctFrom)
    528. ::new (Sequel::SQL::StringAgg)
    529. ::new (Sequel::Plugins::ValidationClassMethods::ClassMethods::Generator)
    530. -
    531. ::new (Sequel::Postgres::JSONQueryOp)
    532. -
    533. ::new (Sequel::Plugins::JsonSerializer::Literal)
    534. -
    535. ::new (Sequel::Postgres::JSONBSubscriptOp)
    536. -
    537. ::new (Sequel::TimestampMigrator)
    538. -
    539. ::new (Sequel::StdioLogger)
    540. -
    541. ::new (Sequel::SQL::EscapedLikeExpression)
    542. -
    543. ::new (Sequel::Postgres::PGArray::Creator)
    544. -
    545. ::new (Sequel::Postgres::PGArray)
    546. -
    547. ::new (Sequel::IntegerMigrator)
    548. -
    549. ::new (Sequel::ConstraintValidations::Generator)
    550. ::new (Sequel::Plugins::AssociationProxies::AssociationProxy)
    551. -
    552. ::new (Sequel::Postgres::PGRange::Parser)
    553. -
    554. ::new (Sequel::Postgres::JSONValueOp)
    555. -
    556. ::new (Sequel::Plugins::AfterInitialize::InstanceMethods)
    557. +
    558. ::new (Sequel::IntegerMigrator)
    559. +
    560. ::new (Sequel::SimpleMigration)
    561. +
    562. ::new (Sequel::StdioLogger)
    563. +
    564. ::new (Sequel::TimestampMigrator)
    565. +
    566. ::new (Sequel::MigrationAlterTableReverser)
    567. +
    568. ::new (Sequel::Plugins::JsonSerializer::Literal)
    569. ::new (Sequel::Migration)
    570. -
    571. ::new (Sequel::SQL::IsDistinctFrom)
    572. -
    573. ::new (Sequel::SQL::DateAdd)
    574. +
    575. ::new (Sequel::ToDot)
    576. +
    577. ::new (Sequel::Dataset::Query)
    578. +
    579. ::new (Sequel::Postgres::InetOp)
    580. +
    581. ::new (Sequel::Postgres::HStoreSubscriptOp)
    582. ::object_to_json_data (Sequel::Plugins::JsonSerializer)
    583. ::output (Sequel::ToDot)
    584. ::parse (Sequel::Postgres::HStore)
    585. @@ -347,34 +351,35 @@
    586. ::run_single (Sequel::TimestampMigrator)
    587. ::singular (String::Inflections)
    588. ::string (Sequel::PrettyTable)
    589. -
    590. ::subclass (Sequel::Postgres::PGRow::HashRow)
    591. ::subclass (Sequel::Postgres::PGRow::ArrayRow)
    592. +
    593. ::subclass (Sequel::Postgres::PGRow::HashRow)
    594. ::uncountable (String::Inflections)
    595. ::use_transactions (Sequel::Migration)
    596. ::wrap (Sequel::Postgres::PGRowOp)
    597. #& (Hash)
    598. #& (Sequel::CoreRefinements)
    599. -
    600. #* (Sequel::Postgres::PGRowOp)
    601. #* (Sequel::CoreRefinements)
    602. +
    603. #* (Sequel::Postgres::PGRowOp)
    604. #+ (Sequel::Postgres::AutoParameterize::QueryString)
    605. +
    606. #- (Sequel::Postgres::InetOp)
    607. #- (Sequel::Postgres::JSONBOp)
    608. #- (Sequel::Postgres::HStoreOp)
    609. -
    610. #- (Sequel::Postgres::InetOp)
    611. -
    612. #== (Sequel::Postgres::PGMultiRange)
    613. #== (Sequel::Postgres::PGRange)
    614. +
    615. #== (Sequel::Postgres::PGMultiRange)
    616. #=== (Sequel::Postgres::PGMultiRange)
    617. #=== (Sequel::Postgres::PGRange)
    618. -
    619. #[] (Symbol)
    620. -
    621. #[] (Sequel::Postgres::PGRowOp)
    622. -
    623. #[] (Sequel::Postgres::JSONBOp)
    624. +
    625. #Bignum (Sequel::Postgres::JSONTableOp::ColumnDSL)
    626. #[] (Sequel::Plugins::ActiveModel::Errors)
    627. -
    628. #[] (Sequel::Plugins::AccessedColumns::InstanceMethods)
    629. -
    630. #[] (Sequel::Postgres::ArrayOp)
    631. -
    632. #[] (Sequel::Postgres::HStoreOp)
    633. #[] (Sequel::Plugins::DefaultsSetter::InstanceMethods)
    634. +
    635. #[] (Sequel::SymbolAref)
    636. +
    637. #[] (Sequel::Postgres::HStoreOp)
    638. #[] (Sequel::Postgres::JSONBaseOp)
    639. +
    640. #[] (Sequel::Postgres::PGRowOp)
    641. +
    642. #[] (Sequel::Plugins::AccessedColumns::InstanceMethods)
    643. +
    644. #[] (Symbol)
    645. +
    646. #[] (Sequel::Postgres::ArrayOp)
    647. #[] (Sequel::SQLite::JSONBaseOp)
    648. -
    649. #[] (Sequel::SymbolAref)
    650. +
    651. #[] (Sequel::Postgres::JSONBOp)
    652. #[] (Sequel::Plugins::SplitValues::InstanceMethods)
    653. #[]= (Sequel::Plugins::InputTransformer::InstanceMethods)
    654. #__value (Sequel::Database::AsyncThreadPool::BaseProxy)
    655. @@ -389,29 +394,29 @@
    656. #add_named_conversion_proc (Sequel::Postgres::PGArray::DatabaseMethods)
    657. #add_typecast_on_load_columns (Sequel::Plugins::TypecastOnLoad::ClassMethods)
    658. #after_create (Sequel::Plugins::Touch::InstanceMethods)
    659. -
    660. #after_destroy (Sequel::Plugins::ActiveModel::InstanceMethods)
    661. -
    662. #after_destroy (Sequel::Plugins::AssociationDependencies::InstanceMethods)
    663. -
    664. #after_destroy (Sequel::Plugins::InstanceHooks::InstanceMethods)
    665. -
    666. #after_destroy (Sequel::Plugins::InstanceFilters::InstanceMethods)
    667. #after_destroy (Sequel::Plugins::Touch::InstanceMethods)
    668. +
    669. #after_destroy (Sequel::Plugins::InstanceFilters::InstanceMethods)
    670. +
    671. #after_destroy (Sequel::Plugins::InstanceHooks::InstanceMethods)
    672. +
    673. #after_destroy (Sequel::Plugins::AssociationDependencies::InstanceMethods)
    674. #after_destroy (Sequel::Plugins::List::InstanceMethods)
    675. +
    676. #after_destroy (Sequel::Plugins::ActiveModel::InstanceMethods)
    677. #after_initialize (Sequel::Plugins::AfterInitialize::InstanceMethods)
    678. -
    679. #after_save (Sequel::Plugins::AssociationPks::InstanceMethods)
    680. -
    681. #after_save (Sequel::Plugins::Dirty::InstanceMethods)
    682. #after_save (Sequel::Plugins::SerializationModificationDetection::InstanceMethods)
    683. #after_save (Sequel::Plugins::InstanceHooks::InstanceMethods)
    684. +
    685. #after_save (Sequel::Plugins::AssociationPks::InstanceMethods)
    686. +
    687. #after_save (Sequel::Plugins::Dirty::InstanceMethods)
    688. #after_save (Sequel::Plugins::AccessedColumns::InstanceMethods)
    689. +
    690. #after_update (Sequel::Plugins::Touch::InstanceMethods)
    691. #after_update (Sequel::Plugins::InstanceFilters::InstanceMethods)
    692. #after_update (Sequel::Plugins::ModificationDetection::InstanceMethods)
    693. -
    694. #after_update (Sequel::Plugins::UpdatePrimaryKey::InstanceMethods)
    695. #after_update (Sequel::Plugins::Dirty::InstanceMethods)
    696. #after_update (Sequel::Plugins::UpdateRefresh::InstanceMethods)
    697. -
    698. #after_update (Sequel::Plugins::Touch::InstanceMethods)
    699. +
    700. #after_update (Sequel::Plugins::UpdatePrimaryKey::InstanceMethods)
    701. #after_validation (Sequel::Plugins::InstanceHooks::InstanceMethods)
    702. #akeys (Sequel::Postgres::HStoreOp)
    703. #all (Sequel::Plugins::EagerEach::DatasetMethods)
    704. -
    705. #all (Sequel::Postgres::ArrayOp)
    706. #all (Sequel::Plugins::StaticCache::ClassMethods)
    707. +
    708. #all (Sequel::Postgres::ArrayOp)
    709. #allow_lazy_load (Sequel::Plugins::ForbidLazyLoad::InstanceMethods)
    710. #allow_lazy_load_for_static_cache_associations (Sequel::Plugins::ForbidLazyLoad::ClassMethods)
    711. #allow_manual_timestamp_update? (Sequel::Plugins::Timestamps::ClassMethods)
    712. @@ -427,15 +432,15 @@
    713. #array_from_csv (Sequel::Plugins::CsvSerializer::ClassMethods)
    714. #array_from_json (Sequel::Plugins::JsonSerializer::ClassMethods)
    715. #array_from_xml (Sequel::Plugins::XmlSerializer::ClassMethods)
    716. -
    717. #array_length (Sequel::Postgres::JSONBaseOp)
    718. #array_length (Sequel::SQLite::JSONBaseOp)
    719. +
    720. #array_length (Sequel::Postgres::JSONBaseOp)
    721. #array_type (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
    722. #array_type (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
    723. #as (Sequel::SymbolAs)
    724. #as_hash (Sequel::Plugins::StaticCache::ClassMethods)
    725. -
    726. #associate (Sequel::Plugins::DatasetAssociations::ClassMethods)
    727. #associate (Sequel::Plugins::AutoRestrictEagerGraph::ClassMethods)
    728. #associate (Sequel::Plugins::UnusedAssociations::ClassMethods)
    729. +
    730. #associate (Sequel::Plugins::DatasetAssociations::ClassMethods)
    731. #associated (Sequel::Plugins::DatasetAssociations::DatasetMethods)
    732. #associated_object_keys (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
    733. #associated_object_keys (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
    734. @@ -447,109 +452,110 @@
    735. #auto_validate_types? (Sequel::Plugins::AutoValidations::ClassMethods)
    736. #avals (Sequel::Postgres::HStoreOp)
    737. #before_create (Sequel::Plugins::PreparedStatementsSafe::InstanceMethods)
    738. -
    739. #before_destroy (Sequel::Plugins::StaticCache::InstanceMethods)
    740. -
    741. #before_destroy (Sequel::Plugins::OptimisticLockingBase::InstanceMethods)
    742. #before_destroy (Sequel::Plugins::InstanceHooks::InstanceMethods)
    743. +
    744. #before_destroy (Sequel::Plugins::StaticCache::InstanceMethods)
    745. #before_destroy (Sequel::Plugins::AssociationDependencies::InstanceMethods)
    746. +
    747. #before_destroy (Sequel::Plugins::OptimisticLockingBase::InstanceMethods)
    748. #before_save (Sequel::Plugins::Tree::SingleRoot::InstanceMethods)
    749. -
    750. #before_save (Sequel::Plugins::StaticCache::InstanceMethods)
    751. #before_save (Sequel::Plugins::InstanceHooks::InstanceMethods)
    752. +
    753. #before_save (Sequel::Plugins::StaticCache::InstanceMethods)
    754. +
    755. #before_update (Sequel::Plugins::Caching::InstanceMethods)
    756. #before_update (Sequel::Plugins::Timestamps::InstanceMethods)
    757. #before_update (Sequel::Plugins::OptimisticLockingBase::InstanceMethods)
    758. -
    759. #before_update (Sequel::Plugins::Caching::InstanceMethods)
    760. +
    761. #before_validation (Sequel::Plugins::List::InstanceMethods)
    762. +
    763. #before_validation (Sequel::Plugins::ClassTableInheritance::InstanceMethods)
    764. #before_validation (Sequel::Plugins::Uuid::InstanceMethods)
    765. -
    766. #before_validation (Sequel::Plugins::Composition::InstanceMethods)
    767. #before_validation (Sequel::Plugins::SingleTableInheritance::InstanceMethods)
    768. #before_validation (Sequel::Plugins::Timestamps::InstanceMethods)
    769. -
    770. #before_validation (Sequel::Plugins::ClassTableInheritance::InstanceMethods)
    771. +
    772. #before_validation (Sequel::Plugins::Composition::InstanceMethods)
    773. #before_validation (Sequel::Plugins::Serialization::InstanceMethods)
    774. -
    775. #before_validation (Sequel::Plugins::List::InstanceMethods)
    776. #blank? (TrueClass)
    777. -
    778. #blank? (Object)
    779. -
    780. #blank? (String)
    781. #blank? (NilClass)
    782. #blank? (Numeric)
    783. +
    784. #blank? (Object)
    785. +
    786. #blank? (String)
    787. #blank? (FalseClass)
    788. -
    789. #bound_variable_arg (Sequel::Postgres::PGRange::DatabaseMethods)
    790. -
    791. #bound_variable_arg (Sequel::Plugins::PgRow::DatabaseMethods)
    792. -
    793. #bound_variable_arg (Sequel::Postgres::PGRow::DatabaseMethods)
    794. -
    795. #bound_variable_arg (Sequel::Postgres::ExtendedDateSupport)
    796. +
    797. #bound_variable_arg (Sequel::Postgres::PGMultiRange::DatabaseMethods)
    798. #bound_variable_arg (Sequel::Postgres::HStore::DatabaseMethods)
    799. -
    800. #bound_variable_arg (Sequel::Postgres::JSONDatabaseMethods)
    801. +
    802. #bound_variable_arg (Sequel::Postgres::PGRange::DatabaseMethods)
    803. +
    804. #bound_variable_arg (Sequel::Postgres::IntervalDatabaseMethods)
    805. #bound_variable_arg (Sequel::Postgres::InetDatabaseMethods)
    806. +
    807. #bound_variable_arg (Sequel::Postgres::ExtendedDateSupport)
    808. #bound_variable_arg (Sequel::Postgres::PGArray::DatabaseMethods)
    809. -
    810. #bound_variable_arg (Sequel::Postgres::IntervalDatabaseMethods)
    811. -
    812. #bound_variable_arg (Sequel::Postgres::PGMultiRange::DatabaseMethods)
    813. +
    814. #bound_variable_arg (Sequel::Plugins::PgRow::DatabaseMethods)
    815. +
    816. #bound_variable_arg (Sequel::Postgres::PGRow::DatabaseMethods)
    817. +
    818. #bound_variable_arg (Sequel::Postgres::JSONDatabaseMethods)
    819. #cache_default_values? (Sequel::Plugins::DefaultsSetter::ClassMethods)
    820. #cache_delete_pk (Sequel::Plugins::Caching::ClassMethods)
    821. #cache_get_pk (Sequel::Plugins::StaticCache::ForbidLazyLoadClassMethods)
    822. #cache_get_pk (Sequel::Plugins::StaticCache::ClassMethods)
    823. #cache_get_pk (Sequel::Plugins::Caching::ClassMethods)
    824. -
    825. #cache_key (Sequel::Plugins::Caching::ClassMethods)
    826. #cache_key (Sequel::Plugins::Caching::InstanceMethods)
    827. +
    828. #cache_key (Sequel::Plugins::Caching::ClassMethods)
    829. #cache_key_prefix (Sequel::Plugins::Caching::ClassMethods)
    830. #calculate_values_hashes (Sequel::Plugins::ModificationDetection::InstanceMethods)
    831. -
    832. #call (Sequel::Postgres::PGRange::Parser)
    833. -
    834. #call (Sequel::Plugins::ModificationDetection::ClassMethods)
    835. -
    836. #call (Sequel::Plugins::ForceEncoding::ClassMethods)
    837. -
    838. #call (Sequel::Postgres::PGArray::Creator)
    839. -
    840. #call (Sequel::Postgres::PGMultiRange::Creator)
    841. +
    842. #call (Sequel::Plugins::SplitValues::ClassMethods)
    843. +
    844. #call (Sequel::Plugins::AfterInitialize::ClassMethods)
    845. #call (Sequel::Plugins::TypecastOnLoad::ClassMethods)
    846. #call (Sequel::Postgres::PGRow::Parser)
    847. -
    848. #call (Sequel::Plugins::AfterInitialize::ClassMethods)
    849. -
    850. #call (Sequel::Plugins::SplitValues::ClassMethods)
    851. +
    852. #call (Sequel::Postgres::PGArray::Creator)
    853. +
    854. #call (Sequel::Plugins::ModificationDetection::ClassMethods)
    855. +
    856. #call (Sequel::Postgres::PGRange::Parser)
    857. +
    858. #call (Sequel::Postgres::PGMultiRange::Creator)
    859. #call (Sequel::Postgres::IntervalDatabaseMethods::Parser)
    860. +
    861. #call (Sequel::Plugins::ForceEncoding::ClassMethods)
    862. #camelcase (String)
    863. #camelize (String)
    864. #can_have_associated_objects? (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
    865. #can_have_associated_objects? (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
    866. #cardinality (Sequel::Postgres::ArrayOp)
    867. -
    868. #case (Hash)
    869. #case (Sequel::CoreRefinements)
    870. +
    871. #case (Hash)
    872. #case (Array)
    873. #cast_sql_append (Sequel::Postgres::AutoParameterize::DatasetMethods)
    874. #change (Sequel::MigrationDSL)
    875. -
    876. #changed_columns (Sequel::Plugins::ModificationDetection::InstanceMethods)
    877. #changed_columns (Sequel::Plugins::SerializationModificationDetection::InstanceMethods)
    878. +
    879. #changed_columns (Sequel::Plugins::ModificationDetection::InstanceMethods)
    880. #check_column_conflicts (Sequel::Plugins::ColumnConflicts::ClassMethods)
    881. #check_columns! (Sequel::Postgres::PGRow::HashRow)
    882. #classify (String)
    883. #clone (Sequel::Dataset::Provenance)
    884. #cloneable? (Sequel::Plugins::ManyThroughMany::ManyThroughManyAssociationReflection)
    885. +
    886. #column (Sequel::Postgres::JSONTableOp::ColumnDSL)
    887. #column_change (Sequel::Plugins::Dirty::InstanceMethods)
    888. #column_changed? (Sequel::Plugins::Dirty::InstanceMethods)
    889. #column_changes (Sequel::Plugins::Dirty::InstanceMethods)
    890. #column_previously_changed? (Sequel::Plugins::Dirty::InstanceMethods)
    891. #column_previously_was (Sequel::Plugins::Dirty::InstanceMethods)
    892. #column_schema_to_ruby_type (Sequel::SchemaDumper)
    893. +
    894. #columns (Sequel::Postgres::PGRow::HashRow)
    895. #columns (Sequel::Dataset::NullDataset)
    896. #columns (Sequel::ColumnsIntrospection)
    897. -
    898. #columns (Sequel::Postgres::PGRow::HashRow)
    899. #columns! (Sequel::Plugins::EagerEach::DatasetMethods)
    900. #comment (Sequel::SQLComments)
    901. +
    902. #complex_expression_sql_append (Sequel::Postgres::AutoParameterize::DatasetMethods)
    903. #complex_expression_sql_append (Sequel::Dataset::SetLiteralizer)
    904. -
    905. #complex_expression_sql_append (Sequel::Postgres::AutoParameterizeInArray)
    906. #complex_expression_sql_append (Sequel::Dataset::SplitArrayNil)
    907. -
    908. #complex_expression_sql_append (Sequel::Postgres::AutoParameterize::DatasetMethods)
    909. +
    910. #complex_expression_sql_append (Sequel::Postgres::AutoParameterizeInArray)
    911. #composition (Sequel::Plugins::Composition::ClassMethods)
    912. #compositions (Sequel::Plugins::Composition::InstanceMethods)
    913. #concat (Sequel::Postgres::ArrayOp)
    914. -
    915. #concat (Sequel::Postgres::HStoreOp)
    916. #concat (Sequel::Postgres::JSONBOp)
    917. +
    918. #concat (Sequel::Postgres::HStoreOp)
    919. #connect (Sequel::ServerLogging)
    920. #constant_sql_append (Sequel::ConstantSqlOverride::DatasetMethods)
    921. #constantize (String)
    922. #constraint (Sequel::ConstraintValidations::AlterTableGeneratorMethods)
    923. -
    924. #contain_all (Sequel::Postgres::JSONBOp)
    925. #contain_all (Sequel::Postgres::HStoreOp)
    926. +
    927. #contain_all (Sequel::Postgres::JSONBOp)
    928. #contain_any (Sequel::Postgres::JSONBOp)
    929. #contain_any (Sequel::Postgres::HStoreOp)
    930. #contained_by (Sequel::Postgres::ArrayOp)
    931. #contained_by (Sequel::Postgres::JSONBOp)
    932. #contained_by (Sequel::Postgres::HStoreOp)
    933. -
    934. #contains (Sequel::Postgres::JSONBOp)
    935. -
    936. #contains (Sequel::Postgres::ArrayOp)
    937. #contains (Sequel::Postgres::HStoreOp)
    938. +
    939. #contains (Sequel::Postgres::ArrayOp)
    940. +
    941. #contains (Sequel::Postgres::JSONBOp)
    942. #convert_infinite_timestamps= (Sequel::Postgres::ExtendedDateSupport)
    943. #count (Sequel::Plugins::StaticCache::ClassMethods)
    944. #cover? (Sequel::Postgres::PGRange)
    945. @@ -578,8 +584,8 @@
    946. #debug (Sequel::StdioLogger)
    947. #def_dataset_method (Sequel::Plugins::DefDatasetMethod::ClassMethods)
    948. #default_associated_key_alias (Sequel::Plugins::ManyThroughMany::ManyThroughManyAssociationReflection)
    949. -
    950. #default_key (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
    951. #default_key (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
    952. +
    953. #default_key (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
    954. #default_static_cache_update_name (Sequel::Postgres::StaticCacheUpdater)
    955. #define_composition_accessor (Sequel::Plugins::Composition::ClassMethods)
    956. #defined (Sequel::Postgres::HStoreOp)
    957. @@ -590,8 +596,8 @@
    958. #delete_path (Sequel::Postgres::JSONBOp)
    959. #delete_unused_associations_files (Sequel::Plugins::UnusedAssociations::ClassMethods)
    960. #demodulize (String)
    961. -
    962. #descendants (Sequel::Plugins::Tree::InstanceMethods)
    963. #descendants (Sequel::Plugins::Subclasses::ClassMethods)
    964. +
    965. #descendants (Sequel::Plugins::Tree::InstanceMethods)
    966. #descendents (Sequel::Plugins::Subclasses::ClassMethods)
    967. #deserialized_values (Sequel::Plugins::Serialization::InstanceMethods)
    968. #dims (Sequel::Postgres::ArrayOp)
    969. @@ -617,20 +623,20 @@
    970. #dump_schema_migration (Sequel::SchemaDumper)
    971. #dump_static_cache_cache (Sequel::Plugins::StaticCacheCache::ClassMethods)
    972. #dump_table_schema (Sequel::SchemaDumper)
    973. -
    974. #each (Sequel::Plugins::StaticCache::ClassMethods)
    975. -
    976. #each (Sequel::Postgres::HStoreOp)
    977. #each (Sequel::Plugins::ForbidLazyLoad::DatasetMethods)
    978. -
    979. #each (Sequel::Dataset::NullDataset)
    980. -
    981. #each (Sequel::GraphEach)
    982. +
    983. #each (Sequel::Postgres::HStoreOp)
    984. #each (Sequel::Plugins::EagerEach::DatasetMethods)
    985. -
    986. #each (Sequel::Postgres::JSONBaseOp)
    987. +
    988. #each (Sequel::GraphEach)
    989. +
    990. #each (Sequel::Plugins::StaticCache::ClassMethods)
    991. +
    992. #each (Sequel::Dataset::NullDataset)
    993. #each (Sequel::SQLite::JSONBaseOp)
    994. +
    995. #each (Sequel::Postgres::JSONBaseOp)
    996. #each_page (Sequel::DatasetPagination)
    997. #each_text (Sequel::Postgres::JSONBaseOp)
    998. #eager_graph_build_associations (Sequel::Plugins::EagerGraphEager::DatasetMethods)
    999. #eager_graph_eager (Sequel::Plugins::EagerGraphEager::DatasetMethods)
    1000. -
    1001. #eager_graph_limit_strategy (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
    1002. #eager_graph_limit_strategy (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
    1003. +
    1004. #eager_graph_limit_strategy (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
    1005. #eager_limit_strategy (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
    1006. #eager_limit_strategy (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
    1007. #eager_load_concurrently (Sequel::Plugins::ConcurrentEagerLoading::DatasetMethods)
    1008. @@ -651,9 +657,10 @@
    1009. #exclude_where (Sequel::Sequel4DatasetMethods)
    1010. #execute (Sequel::Postgres::AutoParameterize::DatabaseMethods)
    1011. #exist? (Sequel::Postgres::HStoreOp)
    1012. +
    1013. #exists (Sequel::Postgres::JSONTableOp::ColumnDSL)
    1014. #exists (Sequel::Postgres::JSONBaseOp)
    1015. -
    1016. #extract (Sequel::SQLite::JSONBaseOp)
    1017. #extract (Sequel::Postgres::JSONBaseOp)
    1018. +
    1019. #extract (Sequel::SQLite::JSONBaseOp)
    1020. #extract_text (Sequel::Postgres::JSONBaseOp)
    1021. #fetch (Sequel::Postgres::HStore)
    1022. #fetch_rows (Sequel::Dataset::NullDataset)
    1023. @@ -662,64 +669,64 @@
    1024. #filter_by_associations_limit_strategy (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
    1025. #filter_expr (Sequel::Dataset::AutoLiteralStrings)
    1026. #finalize_associations (Sequel::Plugins::ForbidLazyLoad::ClassMethods)
    1027. +
    1028. #finalize_settings (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
    1029. #finalize_settings (Sequel::Plugins::ManyThroughMany::ManyThroughManyAssociationReflection)
    1030. #finalize_settings (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
    1031. -
    1032. #finalize_settings (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
    1033. #find_or_new (Sequel::Plugins::UpdateOrCreate::ClassMethods)
    1034. #finder (Sequel::Plugins::Finder::ClassMethods)
    1035. -
    1036. #first (Sequel::Plugins::StaticCache::ClassMethods)
    1037. #first (Sequel::Plugins::StaticCache::ForbidLazyLoadClassMethods)
    1038. +
    1039. #first (Sequel::Plugins::StaticCache::ClassMethods)
    1040. #first_page? (Sequel::Dataset::Pagination)
    1041. #forbid_lazy_load (Sequel::Plugins::ForbidLazyLoad::InstanceMethods)
    1042. #foreign_key (String)
    1043. -
    1044. #freeze (Sequel::Postgres::PGRange::DatabaseMethods)
    1045. -
    1046. #freeze (Sequel::Plugins::Finder::ClassMethods)
    1047. +
    1048. #freeze (Sequel::Plugins::WhitelistSecurity::ClassMethods)
    1049. #freeze (Sequel::Postgres::PGMultiRange::DatabaseMethods)
    1050. -
    1051. #freeze (Sequel::Plugins::AutoValidations::ClassMethods)
    1052. +
    1053. #freeze (Sequel::Plugins::UpdateRefresh::ClassMethods)
    1054. +
    1055. #freeze (Sequel::Plugins::ValidationClassMethods::ClassMethods)
    1056. +
    1057. #freeze (Sequel::Plugins::ColumnConflicts::ClassMethods)
    1058. +
    1059. #freeze (Sequel::Postgres::AutoParameterize::QueryString)
    1060. #freeze (Sequel::Plugins::SingleTableInheritance::ClassMethods)
    1061. -
    1062. #freeze (Sequel::Plugins::AssociationDependencies::ClassMethods)
    1063. +
    1064. #freeze (Sequel::Plugins::JsonSerializer::ClassMethods)
    1065. #freeze (Sequel::Plugins::BlacklistSecurity::ClassMethods)
    1066. -
    1067. #freeze (Sequel::Plugins::LazyAttributes::ClassMethods)
    1068. -
    1069. #freeze (Sequel::Plugins::UpdateRefresh::ClassMethods)
    1070. +
    1071. #freeze (Sequel::Plugins::InputTransformer::ClassMethods)
    1072. +
    1073. #freeze (Sequel::Plugins::DefaultsSetter::ClassMethods)
    1074. #freeze (Sequel::Plugins::UnusedAssociations::ClassMethods)
    1075. +
    1076. #freeze (Sequel::ConstantSqlOverride::DatabaseMethods)
    1077. +
    1078. #freeze (Sequel::Plugins::AutoValidations::ClassMethods)
    1079. +
    1080. #freeze (Sequel::Plugins::ClassTableInheritance::ClassMethods)
    1081. +
    1082. #freeze (Sequel::Plugins::HookClassMethods::ClassMethods)
    1083. +
    1084. #freeze (Sequel::Plugins::CsvSerializer::ClassMethods)
    1085. +
    1086. #freeze (Sequel::Plugins::LazyAttributes::ClassMethods)
    1087. #freeze (Sequel::Plugins::TypecastOnLoad::ClassMethods)
    1088. -
    1089. #freeze (Sequel::Plugins::Serialization::InstanceMethods)
    1090. -
    1091. #freeze (Sequel::Plugins::NestedAttributes::ClassMethods)
    1092. -
    1093. #freeze (Sequel::Plugins::Serialization::ClassMethods)
    1094. -
    1095. #freeze (Sequel::Plugins::ValidationClassMethods::ClassMethods)
    1096. -
    1097. #freeze (Sequel::Plugins::Composition::InstanceMethods)
    1098. #freeze (Sequel::Plugins::ConstraintValidations::ClassMethods)
    1099. +
    1100. #freeze (Sequel::Plugins::SerializationModificationDetection::InstanceMethods)
    1101. +
    1102. #freeze (Sequel::Postgres::PGRange::DatabaseMethods)
    1103. +
    1104. #freeze (Sequel::Plugins::InstanceFilters::InstanceMethods)
    1105. +
    1106. #freeze (Sequel::Plugins::AssociationDependencies::ClassMethods)
    1107. #freeze (Sequel::Postgres::PGRow::DatabaseMethods)
    1108. -
    1109. #freeze (Sequel::Plugins::ActiveModel::ClassMethods)
    1110. -
    1111. #freeze (Sequel::Plugins::CsvSerializer::ClassMethods)
    1112. -
    1113. #freeze (Sequel::Plugins::PreparedStatementsSafe::ClassMethods)
    1114. -
    1115. #freeze (Sequel::Plugins::Composition::ClassMethods)
    1116. -
    1117. #freeze (Sequel::Plugins::HookClassMethods::ClassMethods)
    1118. -
    1119. #freeze (Sequel::Postgres::AutoParameterize::QueryString)
    1120. +
    1121. #freeze (Sequel::Plugins::Finder::ClassMethods)
    1122. #freeze (Sequel::Plugins::Dirty::InstanceMethods)
    1123. -
    1124. #freeze (Sequel::Plugins::Tree::ClassMethods)
    1125. -
    1126. #freeze (Sequel::Plugins::JsonSerializer::ClassMethods)
    1127. -
    1128. #freeze (Sequel::Plugins::ClassTableInheritance::ClassMethods)
    1129. -
    1130. #freeze (Sequel::ConstantSqlOverride::DatabaseMethods)
    1131. -
    1132. #freeze (Sequel::Plugins::DefaultsSetter::ClassMethods)
    1133. #freeze (Sequel::Postgres::PGArray::DatabaseMethods)
    1134. -
    1135. #freeze (Sequel::Plugins::WhitelistSecurity::ClassMethods)
    1136. -
    1137. #freeze (Sequel::Plugins::InstanceFilters::InstanceMethods)
    1138. -
    1139. #freeze (Sequel::Plugins::ColumnConflicts::ClassMethods)
    1140. +
    1141. #freeze (Sequel::Plugins::Serialization::InstanceMethods)
    1142. +
    1143. #freeze (Sequel::Plugins::PreparedStatementsSafe::ClassMethods)
    1144. +
    1145. #freeze (Sequel::Plugins::Tree::ClassMethods)
    1146. +
    1147. #freeze (Sequel::Plugins::Composition::InstanceMethods)
    1148. +
    1149. #freeze (Sequel::Plugins::Serialization::ClassMethods)
    1150. +
    1151. #freeze (Sequel::Plugins::ActiveModel::ClassMethods)
    1152. #freeze (Sequel::Plugins::Touch::ClassMethods)
    1153. -
    1154. #freeze (Sequel::Plugins::InputTransformer::ClassMethods)
    1155. -
    1156. #freeze (Sequel::Plugins::SerializationModificationDetection::InstanceMethods)
    1157. +
    1158. #freeze (Sequel::Plugins::Composition::ClassMethods)
    1159. +
    1160. #freeze (Sequel::Plugins::NestedAttributes::ClassMethods)
    1161. #freeze_descendants (Sequel::Plugins::Subclasses::ClassMethods)
    1162. #freeze_descendents (Sequel::Plugins::Subclasses::ClassMethods)
    1163. #from (Sequel::MSSQL::EmulateLateralWithApply)
    1164. #from (Sequel::Dataset::DatasetSourceAlias)
    1165. -
    1166. #from_csv (Sequel::Plugins::CsvSerializer::ClassMethods)
    1167. #from_csv (Sequel::Plugins::CsvSerializer::InstanceMethods)
    1168. -
    1169. #from_json (Sequel::Plugins::JsonSerializer::ClassMethods)
    1170. +
    1171. #from_csv (Sequel::Plugins::CsvSerializer::ClassMethods)
    1172. #from_json (Sequel::Plugins::JsonSerializer::InstanceMethods)
    1173. +
    1174. #from_json (Sequel::Plugins::JsonSerializer::ClassMethods)
    1175. #from_json_node (Sequel::Plugins::JsonSerializer::InstanceMethods)
    1176. -
    1177. #from_xml (Sequel::Plugins::XmlSerializer::InstanceMethods)
    1178. #from_xml (Sequel::Plugins::XmlSerializer::ClassMethods)
    1179. +
    1180. #from_xml (Sequel::Plugins::XmlSerializer::InstanceMethods)
    1181. #from_xml_node (Sequel::Plugins::XmlSerializer::ClassMethods)
    1182. #from_xml_node (Sequel::Plugins::XmlSerializer::InstanceMethods)
    1183. #get (Sequel::Postgres::JSONBaseOp)
    1184. @@ -728,20 +735,20 @@
    1185. #get_column_value (Sequel::Plugins::ColumnConflicts::InstanceMethods)
    1186. #get_json (Sequel::SQLite::JSONBaseOp)
    1187. #get_text (Sequel::Postgres::JSONBaseOp)
    1188. -
    1189. #handle_silent_modification_failure? (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
    1190. #handle_silent_modification_failure? (Sequel::Plugins::PgArrayAssociations::PgArrayToManyAssociationReflection)
    1191. +
    1192. #handle_silent_modification_failure? (Sequel::Plugins::PgArrayAssociations::ManyToPgArrayAssociationReflection)
    1193. #has_hooks? (Sequel::Plugins::HookClassMethods::ClassMethods)
    1194. -
    1195. #has_key? (Sequel::Postgres::HStoreOp)
    1196. #has_key? (Sequel::Postgres::JSONBOp)
    1197. +
    1198. #has_key? (Sequel::Postgres::HStoreOp)
    1199. #has_validations? (Sequel::Plugins::ValidationClassMethods::ClassMethods)
    1200. #hash (Sequel::Postgres::PGRange)
    1201. #hook_blocks (Sequel::Plugins::HookClassMethods::ClassMethods)
    1202. #hook_methods_for (Sequel::Plugins::HookClassMethods::ClassMethods)
    1203. -
    1204. #hstore (Sequel::Postgres::ArrayOp)
    1205. #hstore (Sequel::SQL::Builders)
    1206. -
    1207. #hstore (Sequel::Postgres::HStoreOp)
    1208. #hstore (Sequel::CoreRefinements)
    1209. #hstore (Hash)
    1210. +
    1211. #hstore (Sequel::Postgres::ArrayOp)
    1212. +
    1213. #hstore (Sequel::Postgres::HStoreOp)
    1214. #hstore (Sequel::Postgres::HStoreOpMethods)
    1215. #hstore_op (Sequel::SQL::Builders)
    1216. #humanize (String)
    1217. @@ -757,16 +764,16 @@
    1218. #indexes (Sequel::IndexCaching)
    1219. #initial_value (Sequel::Plugins::Dirty::InstanceMethods)
    1220. #initial_values (Sequel::Plugins::Dirty::InstanceMethods)
    1221. -
    1222. #initialize_copy (Sequel::Postgres::AutoParameterize::QueryString)
    1223. #initialize_copy (Sequel::Plugins::AccessedColumns::InstanceMethods)
    1224. +
    1225. #initialize_copy (Sequel::Postgres::AutoParameterize::QueryString)
    1226. #input_transformer_order (Sequel::Plugins::InputTransformer::ClassMethods)
    1227. #insert (Sequel::SQLite::JSONBaseOp)
    1228. -
    1229. #insert (Sequel::Dataset::NullDataset)
    1230. #insert (Sequel::Postgres::JSONBOp)
    1231. +
    1232. #insert (Sequel::Dataset::NullDataset)
    1233. #insert_conflict (Sequel::Plugins::InsertConflict::InstanceMethods)
    1234. -
    1235. #inspect (Sequel::Postgres::AutoParameterize::QueryString)
    1236. -
    1237. #inspect (Sequel::SQL::Expression)
    1238. #inspect (Sequel::SQL::Constant)
    1239. +
    1240. #inspect (Sequel::SQL::Expression)
    1241. +
    1242. #inspect (Sequel::Postgres::AutoParameterize::QueryString)
    1243. #instance_filter (Sequel::Plugins::InstanceFilters::InstanceMethods)
    1244. #integer_outside_bigint_range_strategy (Sequel::Postgres::ExtendedIntegerSupport)
    1245. #interval (Sequel::Sequel4DatasetMethods)
    1246. @@ -783,8 +790,8 @@
    1247. #join_table (Sequel::MSSQL::EmulateLateralWithApply)
    1248. #join_table_alias (Sequel::Plugins::ManyThroughMany::ManyThroughManyAssociationReflection)
    1249. #json (Sequel::SQLite::JSONBaseOp)
    1250. -
    1251. #json_serializer_opts (Sequel::Plugins::JsonSerializer::DatasetMethods)
    1252. #json_serializer_opts (Sequel::Plugins::JsonSerializer::InstanceMethods)
    1253. +
    1254. #json_serializer_opts (Sequel::Plugins::JsonSerializer::DatasetMethods)
    1255. #jsonb (Sequel::SQLite::JSONBaseOp)
    1256. #key? (Sequel::Postgres::HStoreOp)
    1257. #keys (Sequel::Postgres::HStoreOp)
    1258. @@ -795,8 +802,8 @@
    1259. #length (Sequel::Postgres::ArrayOp)
    1260. #list_dataset (Sequel::Plugins::List::InstanceMethods)
    1261. #listen_for_static_cache_updates (Sequel::Postgres::StaticCacheUpdater)
    1262. -
    1263. #lit (Sequel::CoreRefinements)
    1264. #lit (String)
    1265. +
    1266. #lit (Sequel::CoreRefinements)
    1267. #literal_append (Sequel::Postgres::AutoParameterize::DatasetMethods)
    1268. #literal_datetime (Sequel::Dataset::RoundTimestamps)
    1269. #literal_sqltime (Sequel::Dataset::RoundTimestamps)
    1270. @@ -808,8 +815,8 @@
    1271. #load_schema_cache? (Sequel::SchemaCaching)
    1272. #load_typecast (Sequel::Plugins::TypecastOnLoad::InstanceMethods)
    1273. #log_connection_yield (Sequel::ErrorSQL)
    1274. -
    1275. #log_connection_yield (Sequel::CallerLogging)
    1276. #log_connection_yield (Sequel::SQLLogNormalizer)
    1277. +
    1278. #log_connection_yield (Sequel::CallerLogging)
    1279. #log_exception (Sequel::ErrorSQL)
    1280. #loose_count (Sequel::Postgres::LooseCount)
    1281. #lower (Sequel::Postgres::ArrayOp)
    1282. @@ -821,10 +828,10 @@
    1283. #merge (Sequel::Postgres::HStoreOp)
    1284. #merge (Sequel::Postgres::HStore)
    1285. #method_missing (Sequel::Plugins::AssociationProxies::AssociationProxy)
    1286. -
    1287. #method_missing (Sequel::Database::AsyncThreadPool::BaseProxy)
    1288. -
    1289. #method_missing (Sequel::Dataset::Query)
    1290. #method_missing (Sequel::Migration)
    1291. +
    1292. #method_missing (Sequel::Database::AsyncThreadPool::BaseProxy)
    1293. #method_missing (Sequel::Plugins::ValidationClassMethods::ClassMethods::Generator)
    1294. +
    1295. #method_missing (Sequel::Dataset::Query)
    1296. #minify (Sequel::SQLite::JSONBaseOp)
    1297. #model_name (Sequel::Plugins::ActiveModel::InstanceMethods)
    1298. #move_down (Sequel::Plugins::List::InstanceMethods)
    1299. @@ -834,6 +841,7 @@
    1300. #move_up (Sequel::Plugins::List::InstanceMethods)
    1301. #multi_insert_sql (Sequel::Postgres::AutoParameterize::DatasetMethods)
    1302. #needing_reencryption (Sequel::Plugins::ColumnEncryption::DatasetMethods)
    1303. +
    1304. #nested (Sequel::Postgres::JSONTableOp::ColumnDSL)
    1305. #nested_attributes (Sequel::Plugins::NestedAttributes::ClassMethods)
    1306. #new_entry (Sequel::Postgres::PGArray::Parser)
    1307. #new_using_server (Sequel::Plugins::Sharding::ClassMethods)
    1308. @@ -845,18 +853,19 @@
    1309. #nullify (Sequel::Dataset::Nullifiable)
    1310. #on_duplicate_columns (Sequel::DuplicateColumnsHandler)
    1311. #one_through_many (Sequel::Plugins::ManyThroughMany::ClassMethods)
    1312. -
    1313. #op (Sequel::Postgres::PGArray)
    1314. #op (Sequel::Postgres::PGRange)
    1315. -
    1316. #op (Sequel::Postgres::PGRow::ArrayRow)
    1317. +
    1318. #op (Sequel::Postgres::JSONBArray)
    1319. +
    1320. #op (Sequel::Postgres::PGArray)
    1321. +
    1322. #op (Sequel::Postgres::JSONHash)
    1323. +
    1324. #op (Sequel::Postgres::JSONBHash)
    1325. #op (Sequel::Postgres::HStore)
    1326. -
    1327. #op (Sequel::Postgres::PGRow::HashRow)
    1328. #op (Sequel::Postgres::PGMultiRange)
    1329. +
    1330. #op (Sequel::Postgres::PGRow::ArrayRow)
    1331. +
    1332. #op (Sequel::Postgres::PGRow::HashRow)
    1333. #op (Sequel::Postgres::JSONArray)
    1334. -
    1335. #op (Sequel::Postgres::JSONHash)
    1336. -
    1337. #op (Sequel::Postgres::JSONBHash)
    1338. -
    1339. #op (Sequel::Postgres::JSONBArray)
    1340. #operator (Sequel::ConstraintValidations::Generator)
    1341. #order (Sequel::SQL::StringAgg)
    1342. +
    1343. #ordinality (Sequel::Postgres::JSONTableOp::ColumnDSL)
    1344. #output (Sequel::ToDot)
    1345. #overlaps (Sequel::Postgres::ArrayOp)
    1346. #page_count (Sequel::Dataset::Pagination)
    1347. @@ -867,8 +876,8 @@
    1348. #paged_update (Sequel::Plugins::PagedOperations::DatasetMethods)
    1349. #paginate (Sequel::DatasetPagination)
    1350. #pagination_record_count (Sequel::Dataset::Pagination)
    1351. -
    1352. #parse (Sequel::Postgres::HStore::Parser)
    1353. #parse (Sequel::Postgres::PGRow::Splitter)
    1354. +
    1355. #parse (Sequel::Postgres::HStore::Parser)
    1356. #parse (Sequel::Postgres::PGArray::Parser)
    1357. #parse (Sequel::Postgres::PGMultiRange::Parser)
    1358. #patch (Sequel::SQLite::JSONBaseOp)
    1359. @@ -885,44 +894,44 @@
    1360. #path_query_first_tz (Sequel::Postgres::JSONBOp)
    1361. #path_query_tz (Sequel::Postgres::JSONBOp)
    1362. #persisted? (Sequel::Plugins::ActiveModel::InstanceMethods)
    1363. -
    1364. #pg_array (Sequel::SQL::Builders)
    1365. -
    1366. #pg_array (Sequel::Postgres::ArrayOp)
    1367. +
    1368. #pg_array (Sequel::CoreRefinements)
    1369. #pg_array (Array)
    1370. +
    1371. #pg_array (Sequel::Postgres::ArrayOp)
    1372. #pg_array (Sequel::Postgres::ArrayOpMethods)
    1373. -
    1374. #pg_array (Sequel::CoreRefinements)
    1375. +
    1376. #pg_array (Sequel::SQL::Builders)
    1377. #pg_array_op (Sequel::SQL::Builders)
    1378. #pg_array_to_many (Sequel::Plugins::PgArrayAssociations::ClassMethods)
    1379. #pg_auto_constraint_validation_override (Sequel::Plugins::PgAutoConstraintValidations::ClassMethods)
    1380. -
    1381. #pg_inet (Sequel::Postgres::InetOpMethods)
    1382. #pg_inet (Sequel::Postgres::InetOp)
    1383. +
    1384. #pg_inet (Sequel::Postgres::InetOpMethods)
    1385. #pg_inet_op (Sequel::SQL::Builders)
    1386. -
    1387. #pg_json (Sequel::Postgres::JSONOp)
    1388. #pg_json (Sequel::CoreRefinements)
    1389. +
    1390. #pg_json (Sequel::Postgres::JSONOp)
    1391. #pg_json (Sequel::Postgres::JSONOpMethods)
    1392. #pg_json (Array)
    1393. -
    1394. #pg_json (Sequel::SQL::Builders)
    1395. #pg_json (Hash)
    1396. +
    1397. #pg_json (Sequel::SQL::Builders)
    1398. #pg_json_op (Sequel::SQL::Builders)
    1399. #pg_json_wrap (Sequel::SQL::Builders)
    1400. -
    1401. #pg_jsonb (Hash)
    1402. -
    1403. #pg_jsonb (Sequel::SQL::Builders)
    1404. #pg_jsonb (Sequel::Postgres::JSONBOp)
    1405. -
    1406. #pg_jsonb (Array)
    1407. +
    1408. #pg_jsonb (Sequel::SQL::Builders)
    1409. #pg_jsonb (Sequel::Postgres::JSONOpMethods)
    1410. +
    1411. #pg_jsonb (Hash)
    1412. #pg_jsonb (Sequel::CoreRefinements)
    1413. +
    1414. #pg_jsonb (Array)
    1415. #pg_jsonb_op (Sequel::SQL::Builders)
    1416. #pg_jsonb_wrap (Sequel::SQL::Builders)
    1417. #pg_multirange (Sequel::SQL::Builders)
    1418. -
    1419. #pg_range (Sequel::Postgres::RangeOpMethods)
    1420. #pg_range (Range)
    1421. -
    1422. #pg_range (Sequel::SQL::Builders)
    1423. +
    1424. #pg_range (Sequel::Postgres::RangeOpMethods)
    1425. #pg_range (Sequel::Postgres::RangeOp)
    1426. +
    1427. #pg_range (Sequel::SQL::Builders)
    1428. #pg_range (Sequel::CoreRefinements)
    1429. #pg_range_op (Sequel::SQL::Builders)
    1430. -
    1431. #pg_row (Array)
    1432. #pg_row (Sequel::Postgres::PGRowOp::ExpressionMethods)
    1433. -
    1434. #pg_row (Sequel::SQL::Builders)
    1435. #pg_row (Sequel::CoreRefinements)
    1436. +
    1437. #pg_row (Array)
    1438. +
    1439. #pg_row (Sequel::SQL::Builders)
    1440. #pg_row_op (Sequel::SQL::Builders)
    1441. #pk_hash (Sequel::Plugins::UpdatePrimaryKey::InstanceMethods)
    1442. #placeholder_literalizer_class (Sequel::Postgres::AutoParameterize::DatasetMethods)
    1443. @@ -949,8 +958,8 @@
    1444. #query (Sequel::DatasetQuery)
    1445. #query (Sequel::DatabaseQuery)
    1446. #quote_identifiers= (Sequel::IdentifierMangling::DatabaseMethods)
    1447. -
    1448. #quote_identifiers? (Sequel::IdentifierMangling::DatasetMethods)
    1449. #quote_identifiers? (Sequel::IdentifierMangling::DatabaseMethods)
    1450. +
    1451. #quote_identifiers? (Sequel::IdentifierMangling::DatasetMethods)
    1452. #range (Sequel::Sequel4DatasetMethods)
    1453. #reciprocal (Sequel::Plugins::ManyThroughMany::ManyThroughManyAssociationReflection)
    1454. #record_set (Sequel::Postgres::HStoreOp)
    1455. @@ -971,8 +980,8 @@
    1456. #requires_sql_standard_datetimes? (Sequel::AutoCastDateAndTime)
    1457. #reset_column (Sequel::Plugins::Dirty::InstanceMethods)
    1458. #respond_to_missing? (Sequel::Plugins::ValidationClassMethods::ClassMethods::Generator)
    1459. -
    1460. #respond_to_missing? (Sequel::Database::AsyncThreadPool::BaseProxy)
    1461. #respond_to_missing? (Sequel::Migration)
    1462. +
    1463. #respond_to_missing? (Sequel::Database::AsyncThreadPool::BaseProxy)
    1464. #reverse (Sequel::MigrationReverser)
    1465. #reverse (Sequel::MigrationAlterTableReverser)
    1466. #revert (Sequel::MigrationDSL)
    1467. @@ -982,8 +991,9 @@
    1468. #roots (Sequel::Plugins::Tree::DatasetMethods)
    1469. #roots_dataset (Sequel::Plugins::Tree::DatasetMethods)
    1470. #row_proc (Sequel::Plugins::Sharding::DatasetMethods)
    1471. -
    1472. #row_type (Sequel::Postgres::PGRow::DatabaseMethods)
    1473. #row_type (Sequel::Plugins::PgRow::DatabaseMethods)
    1474. +
    1475. #row_type (Sequel::Postgres::PGRow::DatabaseMethods)
    1476. +
    1477. #run (Sequel::DatasetRun)
    1478. #run (Sequel::IntegerMigrator)
    1479. #run (Sequel::TimestampMigrator)
    1480. #run_after_commit_hooks (Database::RunTransactionHooks)
    1481. @@ -994,15 +1004,16 @@
    1482. #self_and_siblings (Sequel::Plugins::Tree::InstanceMethods)
    1483. #separate_query_per_table? (Sequel::Plugins::ManyThroughMany::ManyThroughManyAssociationReflection)
    1484. #sequel_ast_transform (Sequel::Postgres::HStoreSubscriptOp)
    1485. -
    1486. #sequel_ast_transform (Sequel::Postgres::JSONExistsOp)
    1487. +
    1488. #sequel_ast_transform (Sequel::Postgres::JSONTableOp)
    1489. #sequel_ast_transform (Sequel::Postgres::JSONBSubscriptOp)
    1490. -
    1491. #sequel_auto_param_type (Sequel::Postgres::HStore)
    1492. +
    1493. #sequel_ast_transform (Sequel::Postgres::JSONExistsOp)
    1494. +
    1495. #sequel_auto_param_type (Sequel::Postgres)
    1496. #sequel_auto_param_type (Sequel::Postgres::PGRow::ArrayRow)
    1497. +
    1498. #sequel_auto_param_type (Sequel::Postgres::PGRange)
    1499. +
    1500. #sequel_auto_param_type (Sequel::Postgres::PGRow::HashRow)
    1501. #sequel_auto_param_type (Sequel::Postgres::PGArray)
    1502. #sequel_auto_param_type (Sequel::Postgres::PGMultiRange)
    1503. -
    1504. #sequel_auto_param_type (Sequel::Postgres::PGRow::HashRow)
    1505. -
    1506. #sequel_auto_param_type (Sequel::Postgres::PGRange)
    1507. -
    1508. #sequel_auto_param_type (Sequel::Postgres)
    1509. +
    1510. #sequel_auto_param_type (Sequel::Postgres::HStore)
    1511. #serialize_attributes (Sequel::Plugins::Serialization::ClassMethods)
    1512. #set (Sequel::Postgres::JSONBOp)
    1513. #set (Sequel::SQLite::JSONBaseOp)
    1514. @@ -1025,8 +1036,8 @@
    1515. #singularize (String)
    1516. #skeys (Sequel::Postgres::HStoreOp)
    1517. #skip_auto_param (Sequel::Postgres::AutoParameterize::QueryString)
    1518. -
    1519. #skip_auto_validations (Sequel::Plugins::AutoValidations::InstanceMethods)
    1520. #skip_auto_validations (Sequel::Plugins::AutoValidations::ClassMethods)
    1521. +
    1522. #skip_auto_validations (Sequel::Plugins::AutoValidations::InstanceMethods)
    1523. #skip_input_transformer (Sequel::Plugins::InputTransformer::ClassMethods)
    1524. #skip_input_transformer? (Sequel::Plugins::InputTransformer::ClassMethods)
    1525. #skip_pg_auto_param (Sequel::SQL::Builders)
    1526. @@ -1042,34 +1053,34 @@
    1527. #sql_comments_class_methods (Sequel::Plugins::SqlComments::ClassMethods)
    1528. #sql_comments_dataset_methods (Sequel::Plugins::SqlComments::ClassMethods)
    1529. #sql_comments_instance_methods (Sequel::Plugins::SqlComments::ClassMethods)
    1530. -
    1531. #sql_expr (Sequel::CoreRefinements)
    1532. #sql_expr (Array)
    1533. +
    1534. #sql_expr (Sequel::CoreRefinements)
    1535. #sql_expr (Object)
    1536. #sql_expr (Hash)
    1537. #sql_function (Sequel::CoreRefinements)
    1538. #sql_function (Symbol)
    1539. -
    1540. #sql_literal_append (Sequel::Plugins::PgRow::InstanceMethods)
    1541. -
    1542. #sql_literal_append (Sequel::Postgres)
    1543. -
    1544. #sql_literal_append (Sequel::Postgres::PGRow::HashRow)
    1545. +
    1546. #sql_literal_append (Sequel::Postgres::PGArray)
    1547. #sql_literal_append (Sequel::Postgres::PGMultiRange)
    1548. -
    1549. #sql_literal_append (Sequel::Postgres::PGRange)
    1550. +
    1551. #sql_literal_append (Sequel::Plugins::PgRow::InstanceMethods)
    1552. #sql_literal_append (Sequel::Postgres::HStore)
    1553. +
    1554. #sql_literal_append (Sequel::Postgres::PGRange)
    1555. #sql_literal_append (Sequel::Postgres::PGRow::ArrayRow)
    1556. -
    1557. #sql_literal_append (Sequel::Postgres::PGArray)
    1558. +
    1559. #sql_literal_append (Sequel::Postgres)
    1560. +
    1561. #sql_literal_append (Sequel::Postgres::PGRow::HashRow)
    1562. #sql_negate (Hash)
    1563. #sql_negate (Array)
    1564. #sql_negate (Sequel::CoreRefinements)
    1565. #sql_or (Sequel::CoreRefinements)
    1566. -
    1567. #sql_or (Array)
    1568. #sql_or (Hash)
    1569. -
    1570. #sql_string_join (Sequel::CoreRefinements)
    1571. +
    1572. #sql_or (Array)
    1573. #sql_string_join (Array)
    1574. -
    1575. #sql_value_list (Sequel::CoreRefinements)
    1576. +
    1577. #sql_string_join (Sequel::CoreRefinements)
    1578. #sql_value_list (Array)
    1579. +
    1580. #sql_value_list (Sequel::CoreRefinements)
    1581. #sqlite_json_op (Sequel::SQL::Builders)
    1582. #sqlite_json_op (Sequel::SQLite::JSONOpMethods)
    1583. -
    1584. #sqlite_jsonb_op (Sequel::SQLite::JSONOpMethods)
    1585. #sqlite_jsonb_op (Sequel::SQL::Builders)
    1586. +
    1587. #sqlite_jsonb_op (Sequel::SQLite::JSONOpMethods)
    1588. #static_cache_allow_modifications? (Sequel::Plugins::StaticCache::ClassMethods)
    1589. #sti_class_from_key (Sequel::Plugins::ClassTableInheritance::ClassMethods)
    1590. #sti_class_from_sti_key (Sequel::Plugins::SingleTableInheritance::ClassMethods)
    1591. @@ -1085,10 +1096,11 @@
    1592. #supports_lateral_subqueries? (Sequel::MSSQL::EmulateLateralWithApply)
    1593. #svals (Sequel::Postgres::HStoreOp)
    1594. #sync (Sequel::Database::AsyncThreadPool::DatasetMethods)
    1595. +
    1596. #table (Sequel::Postgres::JSONBaseOp)
    1597. #table_name (Sequel::Plugins::ClassTableInheritance::ClassMethods)
    1598. #tableize (String)
    1599. -
    1600. #temporarily_release_connection (Sequel::TemporarilyReleaseConnection::PoolMethods)
    1601. #temporarily_release_connection (Sequel::TemporarilyReleaseConnection::DatabaseMethods)
    1602. +
    1603. #temporarily_release_connection (Sequel::TemporarilyReleaseConnection::PoolMethods)
    1604. #temporarily_release_connection (Sequel::TemporarilyReleaseConnection::ShardedTimedQueue)
    1605. #timezone= (Sequel::NamedTimezones::DatabaseMethods)
    1606. #titlecase (String)
    1607. @@ -1102,9 +1114,9 @@
    1608. #to_dot (Sequel::ToDot::DatasetMethods)
    1609. #to_hash (Sequel::Plugins::StaticCache::ClassMethods)
    1610. #to_hash_groups (Sequel::Plugins::StaticCache::ClassMethods)
    1611. -
    1612. #to_json (Sequel::Plugins::JsonSerializer::Literal)
    1613. -
    1614. #to_json (Sequel::Plugins::JsonSerializer::DatasetMethods)
    1615. #to_json (Sequel::Plugins::JsonSerializer::InstanceMethods)
    1616. +
    1617. #to_json (Sequel::Plugins::JsonSerializer::DatasetMethods)
    1618. +
    1619. #to_json (Sequel::Plugins::JsonSerializer::Literal)
    1620. #to_json_data (Sequel::Plugins::JsonSerializer::InstanceMethods)
    1621. #to_key (Sequel::Plugins::ActiveModel::InstanceMethods)
    1622. #to_matrix (Sequel::Postgres::HStoreOp)
    1623. @@ -1116,21 +1128,22 @@
    1624. #to_record (Sequel::Postgres::JSONBaseOp)
    1625. #to_recordset (Sequel::Postgres::JSONBaseOp)
    1626. #to_s_append (Sequel::Postgres::JSONExistsOp)
    1627. -
    1628. #to_s_append (Sequel::Postgres::AutoParameterize::SkipAutoParam)
    1629. #to_s_append (Sequel::Postgres::JSONBSubscriptOp)
    1630. -
    1631. #to_s_append (Sequel::Postgres::HStoreSubscriptOp)
    1632. +
    1633. #to_s_append (Sequel::Postgres::AutoParameterize::SkipAutoParam)
    1634. +
    1635. #to_s_append (Sequel::Postgres::JSONTableOp)
    1636. #to_s_append (Sequel::SQL::EscapedLikeExpression)
    1637. -
    1638. #to_sequel_blob (String)
    1639. +
    1640. #to_s_append (Sequel::Postgres::HStoreSubscriptOp)
    1641. #to_sequel_blob (Sequel::CoreRefinements)
    1642. +
    1643. #to_sequel_blob (String)
    1644. #to_sequel_time (String)
    1645. #to_string (Sequel::Postgres::ArrayOp)
    1646. #to_time (String)
    1647. -
    1648. #to_xml (Sequel::Plugins::XmlSerializer::DatasetMethods)
    1649. #to_xml (Sequel::Plugins::XmlSerializer::InstanceMethods)
    1650. +
    1651. #to_xml (Sequel::Plugins::XmlSerializer::DatasetMethods)
    1652. #touch (Sequel::Plugins::Touch::InstanceMethods)
    1653. #touch_associations (Sequel::Plugins::Touch::ClassMethods)
    1654. -
    1655. #transaction (Sequel::MigrationDSL)
    1656. #transaction (Sequel::TransactionConnectionValidator)
    1657. +
    1658. #transaction (Sequel::MigrationDSL)
    1659. #tree (Sequel::SQLite::JSONBaseOp)
    1660. #truncate (Sequel::Dataset::NullDataset)
    1661. #type (Sequel::SQLite::JSONBaseOp)
    1662. @@ -1143,8 +1156,8 @@
    1663. #unique (Sequel::ConstraintValidations::AlterTableGeneratorMethods)
    1664. #unnest (Sequel::Postgres::ArrayOp)
    1665. #unquoted_literal (Sequel::Postgres::HStore)
    1666. -
    1667. #unquoted_literal (Sequel::Postgres::PGMultiRange)
    1668. #unquoted_literal (Sequel::Postgres::PGRange)
    1669. +
    1670. #unquoted_literal (Sequel::Postgres::PGMultiRange)
    1671. #unshift (Sequel::Postgres::ArrayOp)
    1672. #unused_association_options (Sequel::Plugins::UnusedAssociations::ClassMethods)
    1673. #unused_associations (Sequel::Plugins::UnusedAssociations::ClassMethods)
    1674. @@ -1164,11 +1177,11 @@
    1675. #valid (Sequel::SQLite::JSONBaseOp)
    1676. #valid? (Sequel::Plugins::ThrowFailures::InstanceMethods)
    1677. #valid_ruby_range? (Sequel::Postgres::PGRange)
    1678. -
    1679. #validate (Sequel::Plugins::AutoValidations::InstanceMethods)
    1680. #validate (Sequel::Plugins::ConstraintValidations::InstanceMethods)
    1681. -
    1682. #validate (Sequel::Plugins::ValidationClassMethods::InstanceMethods)
    1683. -
    1684. #validate (Sequel::Plugins::ValidationClassMethods::ClassMethods)
    1685. #validate (Sequel::ConstraintValidations::CreateTableGeneratorMethods)
    1686. +
    1687. #validate (Sequel::Plugins::ValidationClassMethods::ClassMethods)
    1688. +
    1689. #validate (Sequel::Plugins::ValidationClassMethods::InstanceMethods)
    1690. +
    1691. #validate (Sequel::Plugins::AutoValidations::InstanceMethods)
    1692. #validates (Sequel::Plugins::ValidationClassMethods::ClassMethods)
    1693. #validates_acceptance_of (Sequel::Plugins::ValidationClassMethods::ClassMethods)
    1694. #validates_confirmation_of (Sequel::Plugins::ValidationClassMethods::ClassMethods)
    1695. @@ -1200,29 +1213,29 @@
    1696. #validation (Sequel::ConstraintValidations::CreateTableGeneratorMethods)
    1697. #value (Sequel::Postgres::JSONBaseOp)
    1698. #values (Sequel::Postgres::HStoreOp)
    1699. -
    1700. #where (Sequel::Plugins::InvertedSubsets::DatasetModuleMethods)
    1701. #where (Sequel::Plugins::SubsetConditions::DatasetModuleMethods)
    1702. +
    1703. #where (Sequel::Plugins::InvertedSubsets::DatasetModuleMethods)
    1704. #will_change_column (Sequel::Plugins::Dirty::InstanceMethods)
    1705. #with_comments (Database::SQLComments)
    1706. #with_encrypted_value (Sequel::Plugins::ColumnEncryption::DatasetMethods)
    1707. #with_identifier_input_method (Sequel::IdentifierMangling::DatasetMethods)
    1708. #with_identifier_output_method (Sequel::IdentifierMangling::DatasetMethods)
    1709. #with_pk (Sequel::Plugins::PrimaryKeyLookupCheckValues::DatasetMethods)
    1710. -
    1711. #with_server (Sequel::UnthreadedServerBlock)
    1712. #with_server (Sequel::ThreadedServerBlock)
    1713. #with_server (Sequel::ServerBlock)
    1714. +
    1715. #with_server (Sequel::UnthreadedServerBlock)
    1716. #with_sql (Sequel::Postgres::AutoParameterize::DatasetMethods)
    1717. -
    1718. #with_sql_each (Sequel::GraphEach)
    1719. #with_sql_each (Sequel::Plugins::ForbidLazyLoad::DatasetMethods)
    1720. +
    1721. #with_sql_each (Sequel::GraphEach)
    1722. #with_sql_first (Sequel::Plugins::ForbidLazyLoad::DatasetMethods)
    1723. #xml_builder (Sequel::Plugins::XmlSerializer::ClassMethods)
    1724. #xml_deserialize_name_proc (Sequel::Plugins::XmlSerializer::ClassMethods)
    1725. #xml_serialize_name_proc (Sequel::Plugins::XmlSerializer::ClassMethods)
    1726. -
    1727. #| (Sequel::CoreRefinements)
    1728. #| (Hash)
    1729. +
    1730. #| (Sequel::CoreRefinements)
    1731. +
    1732. #~ (Sequel::Postgres::InetOp)
    1733. #~ (Sequel::CoreRefinements)
    1734. #~ (Hash)
    1735. -
    1736. #~ (Sequel::Postgres::InetOp)
    1737. #~ (Array)
    diff --git a/rdoc/classes/Sequel.html b/rdoc/classes/Sequel.html index 6a915e996..05291a97c 100644 --- a/rdoc/classes/Sequel.html +++ b/rdoc/classes/Sequel.html @@ -434,7 +434,7 @@

    Constants

    MINOR = -84 +85  

    The minor version of Sequel. Bumped for every non-patch level release, generally around once a month.

    diff --git a/rdoc/classes/Sequel/Dataset.html b/rdoc/classes/Sequel/Dataset.html index 2abd06d0a..9eeece884 100644 --- a/rdoc/classes/Sequel/Dataset.html +++ b/rdoc/classes/Sequel/Dataset.html @@ -3014,31 +3014,31 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -847 def as_hash(key_column, value_column = nil, opts = OPTS)
    -848   h = opts[:hash] || {}
    -849   meth = opts[:all] ? :all : :each
    -850   if value_column
    -851     return naked.as_hash(key_column, value_column, opts) if row_proc
    -852     if value_column.is_a?(Array)
    -853       if key_column.is_a?(Array)
    -854         public_send(meth){|r| h[r.values_at(*key_column)] = r.values_at(*value_column)}
    -855       else
    -856         public_send(meth){|r| h[r[key_column]] = r.values_at(*value_column)}
    -857       end
    -858     else
    -859       if key_column.is_a?(Array)
    -860         public_send(meth){|r| h[r.values_at(*key_column)] = r[value_column]}
    -861       else
    -862         public_send(meth){|r| h[r[key_column]] = r[value_column]}
    -863       end
    -864     end
    -865   elsif key_column.is_a?(Array)
    -866     public_send(meth){|r| h[key_column.map{|k| r[k]}] = r}
    -867   else
    -868     public_send(meth){|r| h[r[key_column]] = r}
    -869   end
    -870   h
    -871 end
    +855 def as_hash(key_column, value_column = nil, opts = OPTS) +856 h = opts[:hash] || {} +857 meth = opts[:all] ? :all : :each +858 if value_column +859 return naked.as_hash(key_column, value_column, opts) if row_proc +860 if value_column.is_a?(Array) +861 if key_column.is_a?(Array) +862 public_send(meth){|r| h[r.values_at(*key_column)] = r.values_at(*value_column)} +863 else +864 public_send(meth){|r| h[r[key_column]] = r.values_at(*value_column)} +865 end +866 else +867 if key_column.is_a?(Array) +868 public_send(meth){|r| h[r.values_at(*key_column)] = r[value_column]} +869 else +870 public_send(meth){|r| h[r[key_column]] = r[value_column]} +871 end +872 end +873 elsif key_column.is_a?(Array) +874 public_send(meth){|r| h[key_column.map{|k| r[k]}] = r} +875 else +876 public_send(meth){|r| h[r[key_column]] = r} +877 end +878 h +879 end

    @@ -3318,7 +3318,7 @@

    Public Instance methods

    217 case args.length 218 when 0 219 unless block -220 return single_record +220 return(@opts[:sql] ? single_record! : single_record) 221 end 222 when 1 223 arg = args[0] @@ -3407,52 +3407,60 @@

    Public Instance methods

    # => [6, 'foo'] +

    If called on a dataset with raw SQL, returns the first value in the dataset without changing the selection or setting a limit:

    + +
    DB["SELECT id FROM table"].get # SELECT id FROM table
    +# =>  3
    +
    +
    [show source]
        # File lib/sequel/dataset/actions.rb
    -285 def get(column=(no_arg=true; nil), &block)
    -286   ds = naked
    -287   if block
    -288     raise(Error, 'Must call Dataset#get with an argument or a block, not both') unless no_arg
    -289     ds = ds.select(&block)
    -290     column = ds.opts[:select]
    -291     column = nil if column.is_a?(Array) && column.length < 2
    -292   else
    -293     case column
    -294     when Array
    -295       ds = ds.select(*column)
    -296     when LiteralString, Symbol, SQL::Identifier, SQL::QualifiedIdentifier, SQL::AliasedExpression
    -297       if loader = cached_placeholder_literalizer(:_get_loader) do |pl|
    -298           ds.single_value_ds.select(pl.arg)
    -299         end
    -300 
    -301         return loader.get(column)
    -302       end
    -303 
    -304       ds = ds.select(column)
    -305     else
    -306       if loader = cached_placeholder_literalizer(:_get_alias_loader) do |pl|
    -307           ds.single_value_ds.select(Sequel.as(pl.arg, :v))
    -308         end
    -309 
    -310         return loader.get(column)
    -311       end
    -312 
    -313       ds = ds.select(Sequel.as(column, :v))
    -314     end
    -315   end
    -316 
    -317   if column.is_a?(Array)
    -318    if r = ds.single_record
    -319      r.values_at(*hash_key_symbols(column))
    -320    end
    -321   else
    -322     ds.single_value
    +291 def get(column=(no_arg=true; nil), &block)
    +292   ds = naked
    +293   if block
    +294     raise(Error, 'Must call Dataset#get with an argument or a block, not both') unless no_arg
    +295     ds = ds.select(&block)
    +296     column = ds.opts[:select]
    +297     column = nil if column.is_a?(Array) && column.length < 2
    +298   elsif no_arg && opts[:sql]
    +299     return ds.single_value!
    +300   else
    +301     case column
    +302     when Array
    +303       ds = ds.select(*column)
    +304     when LiteralString, Symbol, SQL::Identifier, SQL::QualifiedIdentifier, SQL::AliasedExpression
    +305       if loader = cached_placeholder_literalizer(:_get_loader) do |pl|
    +306           ds.single_value_ds.select(pl.arg)
    +307         end
    +308 
    +309         return loader.get(column)
    +310       end
    +311 
    +312       ds = ds.select(column)
    +313     else
    +314       if loader = cached_placeholder_literalizer(:_get_alias_loader) do |pl|
    +315           ds.single_value_ds.select(Sequel.as(pl.arg, :v))
    +316         end
    +317 
    +318         return loader.get(column)
    +319       end
    +320 
    +321       ds = ds.select(Sequel.as(column, :v))
    +322     end
     323   end
    -324 end
    +324 +325 if column.is_a?(Array) +326 if r = ds.single_record +327 r.values_at(*hash_key_symbols(column)) +328 end +329 else +330 ds.single_value +331 end +332 end
    @@ -3502,25 +3510,25 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -362 def import(columns, values, opts=OPTS)
    -363   return insert(columns, values) if values.is_a?(Dataset)
    -364 
    -365   return if values.empty?
    -366   raise(Error, 'Using Sequel::Dataset#import with an empty column array is not allowed') if columns.empty?
    -367   ds = opts[:server] ? server(opts[:server]) : self
    -368   
    -369   if slice_size = opts.fetch(:commit_every, opts.fetch(:slice, default_import_slice))
    -370     offset = 0
    -371     rows = []
    -372     while offset < values.length
    -373       rows << ds._import(columns, values[offset, slice_size], opts)
    -374       offset += slice_size
    -375     end
    -376     rows.flatten
    -377   else
    -378     ds._import(columns, values, opts)
    -379   end
    -380 end
    +370 def import(columns, values, opts=OPTS) +371 return insert(columns, values) if values.is_a?(Dataset) +372 +373 return if values.empty? +374 raise(Error, 'Using Sequel::Dataset#import with an empty column array is not allowed') if columns.empty? +375 ds = opts[:server] ? server(opts[:server]) : self +376 +377 if slice_size = opts.fetch(:commit_every, opts.fetch(:slice, default_import_slice)) +378 offset = 0 +379 rows = [] +380 while offset < values.length +381 rows << ds._import(columns, values[offset, slice_size], opts) +382 offset += slice_size +383 end +384 rows.flatten +385 else +386 ds._import(columns, values, opts) +387 end +388 end
    @@ -3578,14 +3586,14 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -418 def insert(*values, &block)
    -419   sql = insert_sql(*values)
    -420   if uses_returning?(:insert)
    -421     returning_fetch_rows(sql, &block)
    -422   else
    -423     execute_insert(sql)
    -424   end
    -425 end
    +426 def insert(*values, &block) +427 sql = insert_sql(*values) +428 if uses_returning?(:insert) +429 returning_fetch_rows(sql, &block) +430 else +431 execute_insert(sql) +432 end +433 end
    @@ -3611,10 +3619,10 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -437 def last(*args, &block)
    -438   raise(Error, 'No order specified') unless @opts[:order]
    -439   reverse.first(*args, &block)
    -440 end
    +445 def last(*args, &block) +446 raise(Error, 'No order specified') unless @opts[:order] +447 reverse.first(*args, &block) +448 end
    @@ -3646,19 +3654,19 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -456 def map(column=nil, &block)
    -457   if column
    -458     raise(Error, 'Must call Dataset#map with either an argument or a block, not both') if block
    -459     return naked.map(column) if row_proc
    -460     if column.is_a?(Array)
    -461       super(){|r| r.values_at(*column)}
    -462     else
    -463       super(){|r| r[column]}
    -464     end
    -465   else
    -466     super(&block)
    -467   end
    -468 end
    +464 def map(column=nil, &block) +465 if column +466 raise(Error, 'Must call Dataset#map with either an argument or a block, not both') if block +467 return naked.map(column) if row_proc +468 if column.is_a?(Array) +469 super(){|r| r.values_at(*column)} +470 else +471 super(){|r| r[column]} +472 end +473 else +474 super(&block) +475 end +476 end
    @@ -3683,10 +3691,10 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -477 def max(arg=(no_arg = true), &block)
    -478   arg = Sequel.virtual_row(&block) if no_arg
    -479   _aggregate(:max, arg)
    -480 end
    +485 def max(arg=(no_arg = true), &block) +486 arg = Sequel.virtual_row(&block) if no_arg +487 _aggregate(:max, arg) +488 end
    @@ -3749,9 +3757,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -527 def merge
    -528   execute_ddl(merge_sql)
    -529 end
    +535 def merge +536 execute_ddl(merge_sql) +537 end
    @@ -3776,10 +3784,10 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -538 def min(arg=(no_arg = true), &block)
    -539   arg = Sequel.virtual_row(&block) if no_arg
    -540   _aggregate(:min, arg)
    -541 end
    +546 def min(arg=(no_arg = true), &block) +547 arg = Sequel.virtual_row(&block) if no_arg +548 _aggregate(:min, arg) +549 end
    @@ -3807,11 +3815,11 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -555 def multi_insert(hashes, opts=OPTS)
    -556   return if hashes.empty?
    -557   columns = hashes.first.keys
    -558   import(columns, hashes.map{|h| columns.map{|c| h[c]}}, opts)
    -559 end
    +563 def multi_insert(hashes, opts=OPTS) +564 return if hashes.empty? +565 columns = hashes.first.keys +566 import(columns, hashes.map{|h| columns.map{|c| h[c]}}, opts) +567 end
    @@ -3871,65 +3879,65 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -618 def paged_each(opts=OPTS)
    -619   unless @opts[:order]
    -620     raise Sequel::Error, "Dataset#paged_each requires the dataset be ordered"
    -621   end
    -622   unless defined?(yield)
    -623     return enum_for(:paged_each, opts)
    -624   end
    -625 
    -626   total_limit = @opts[:limit]
    -627   offset = @opts[:offset]
    -628   if server = @opts[:server]
    -629     opts = Hash[opts]
    -630     opts[:server] = server
    -631   end
    -632 
    -633   rows_per_fetch = opts[:rows_per_fetch] || 1000
    -634   strategy = if offset || total_limit
    -635     :offset
    -636   else
    -637     opts[:strategy] || :offset
    -638   end
    -639 
    -640   db.transaction(opts) do
    -641     case strategy
    -642     when :filter
    -643       filter_values = opts[:filter_values] || proc{|row, exprs| exprs.map{|e| row[hash_key_symbol(e)]}}
    -644       base_ds = ds = limit(rows_per_fetch)
    -645       while ds
    -646         last_row = nil
    -647         ds.each do |row|
    -648           last_row = row
    -649           yield row
    -650         end
    -651         ds = (base_ds.where(ignore_values_preceding(last_row, &filter_values)) if last_row)
    -652       end
    -653     else
    -654       offset ||= 0
    -655       num_rows_yielded = rows_per_fetch
    -656       total_rows = 0
    -657 
    -658       while num_rows_yielded == rows_per_fetch && (total_limit.nil? || total_rows < total_limit)
    -659         if total_limit && total_rows + rows_per_fetch > total_limit
    -660           rows_per_fetch = total_limit - total_rows
    -661         end
    -662 
    -663         num_rows_yielded = 0
    -664         limit(rows_per_fetch, offset).each do |row|
    -665           num_rows_yielded += 1
    -666           total_rows += 1 if total_limit
    -667           yield row
    -668         end
    -669 
    -670         offset += rows_per_fetch
    -671       end
    -672     end
    -673   end
    -674 
    -675   self
    -676 end
    +626 def paged_each(opts=OPTS) +627 unless @opts[:order] +628 raise Sequel::Error, "Dataset#paged_each requires the dataset be ordered" +629 end +630 unless defined?(yield) +631 return enum_for(:paged_each, opts) +632 end +633 +634 total_limit = @opts[:limit] +635 offset = @opts[:offset] +636 if server = @opts[:server] +637 opts = Hash[opts] +638 opts[:server] = server +639 end +640 +641 rows_per_fetch = opts[:rows_per_fetch] || 1000 +642 strategy = if offset || total_limit +643 :offset +644 else +645 opts[:strategy] || :offset +646 end +647 +648 db.transaction(opts) do +649 case strategy +650 when :filter +651 filter_values = opts[:filter_values] || proc{|row, exprs| exprs.map{|e| row[hash_key_symbol(e)]}} +652 base_ds = ds = limit(rows_per_fetch) +653 while ds +654 last_row = nil +655 ds.each do |row| +656 last_row = row +657 yield row +658 end +659 ds = (base_ds.where(ignore_values_preceding(last_row, &filter_values)) if last_row) +660 end +661 else +662 offset ||= 0 +663 num_rows_yielded = rows_per_fetch +664 total_rows = 0 +665 +666 while num_rows_yielded == rows_per_fetch && (total_limit.nil? || total_rows < total_limit) +667 if total_limit && total_rows + rows_per_fetch > total_limit +668 rows_per_fetch = total_limit - total_rows +669 end +670 +671 num_rows_yielded = 0 +672 limit(rows_per_fetch, offset).each do |row| +673 num_rows_yielded += 1 +674 total_rows += 1 if total_limit +675 yield row +676 end +677 +678 offset += rows_per_fetch +679 end +680 end +681 end +682 +683 self +684 end
    @@ -3962,9 +3970,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -696 def select_hash(key_column, value_column, opts = OPTS)
    -697   _select_hash(:as_hash, key_column, value_column, opts)
    -698 end
    +704 def select_hash(key_column, value_column, opts = OPTS) +705 _select_hash(:as_hash, key_column, value_column, opts) +706 end
    @@ -3997,9 +4005,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -717 def select_hash_groups(key_column, value_column, opts = OPTS)
    -718   _select_hash(:to_hash_groups, key_column, value_column, opts)
    -719 end
    +725 def select_hash_groups(key_column, value_column, opts = OPTS) +726 _select_hash(:to_hash_groups, key_column, value_column, opts) +727 end
    @@ -4033,9 +4041,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -740 def select_map(column=nil, &block)
    -741   _select_map(column, false, &block)
    -742 end
    +748 def select_map(column=nil, &block) +749 _select_map(column, false, &block) +750 end
    @@ -4069,9 +4077,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -759 def select_order_map(column=nil, &block)
    -760   _select_map(column, true, &block)
    -761 end
    +767 def select_order_map(column=nil, &block) +768 _select_map(column, true, &block) +769 end
    @@ -4094,9 +4102,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -769 def single_record
    -770   _single_record_ds.single_record!
    -771 end
    +777 def single_record +778 _single_record_ds.single_record! +779 end
    @@ -4119,9 +4127,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -781 def single_record!
    -782   with_sql_first(select_sql)
    -783 end
    +789 def single_record! +790 with_sql_first(select_sql) +791 end
    @@ -4144,12 +4152,12 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -791 def single_value
    -792   single_value_ds.each do |r|
    -793     r.each{|_, v| return v}
    -794   end
    -795   nil
    -796 end
    +799 def single_value +800 single_value_ds.each do |r| +801 r.each{|_, v| return v} +802 end +803 nil +804 end
    @@ -4172,9 +4180,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -806 def single_value!
    -807   with_sql_single_value(select_sql)
    -808 end
    +814 def single_value! +815 with_sql_single_value(select_sql) +816 end
    @@ -4199,10 +4207,10 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -817 def sum(arg=(no_arg = true), &block)
    -818   arg = Sequel.virtual_row(&block) if no_arg
    -819   _aggregate(:sum, arg)
    -820 end
    +825 def sum(arg=(no_arg = true), &block) +826 arg = Sequel.virtual_row(&block) if no_arg +827 _aggregate(:sum, arg) +828 end
    @@ -4221,9 +4229,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -874 def to_hash(*a)
    -875   as_hash(*a)
    -876 end
    +882 def to_hash(*a) +883 as_hash(*a) +884 end
    @@ -4265,31 +4273,31 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -902 def to_hash_groups(key_column, value_column = nil, opts = OPTS)
    -903   h = opts[:hash] || {}
    -904   meth = opts[:all] ? :all : :each
    -905   if value_column
    -906     return naked.to_hash_groups(key_column, value_column, opts) if row_proc
    -907     if value_column.is_a?(Array)
    -908       if key_column.is_a?(Array)
    -909         public_send(meth){|r| (h[r.values_at(*key_column)] ||= []) << r.values_at(*value_column)}
    -910       else
    -911         public_send(meth){|r| (h[r[key_column]] ||= []) << r.values_at(*value_column)}
    -912       end
    -913     else
    -914       if key_column.is_a?(Array)
    -915         public_send(meth){|r| (h[r.values_at(*key_column)] ||= []) << r[value_column]}
    -916       else
    -917         public_send(meth){|r| (h[r[key_column]] ||= []) << r[value_column]}
    -918       end
    -919     end
    -920   elsif key_column.is_a?(Array)
    -921     public_send(meth){|r| (h[key_column.map{|k| r[k]}] ||= []) << r}
    -922   else
    -923     public_send(meth){|r| (h[r[key_column]] ||= []) << r}
    -924   end
    -925   h
    -926 end
    +910 def to_hash_groups(key_column, value_column = nil, opts = OPTS) +911 h = opts[:hash] || {} +912 meth = opts[:all] ? :all : :each +913 if value_column +914 return naked.to_hash_groups(key_column, value_column, opts) if row_proc +915 if value_column.is_a?(Array) +916 if key_column.is_a?(Array) +917 public_send(meth){|r| (h[r.values_at(*key_column)] ||= []) << r.values_at(*value_column)} +918 else +919 public_send(meth){|r| (h[r[key_column]] ||= []) << r.values_at(*value_column)} +920 end +921 else +922 if key_column.is_a?(Array) +923 public_send(meth){|r| (h[r.values_at(*key_column)] ||= []) << r[value_column]} +924 else +925 public_send(meth){|r| (h[r[key_column]] ||= []) << r[value_column]} +926 end +927 end +928 elsif key_column.is_a?(Array) +929 public_send(meth){|r| (h[key_column.map{|k| r[k]}] ||= []) << r} +930 else +931 public_send(meth){|r| (h[r[key_column]] ||= []) << r} +932 end +933 h +934 end
    @@ -4312,9 +4320,9 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -932 def truncate
    -933   execute_ddl(truncate_sql)
    -934 end
    +940 def truncate +941 execute_ddl(truncate_sql) +942 end
    @@ -4351,14 +4359,14 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -958 def update(values=OPTS, &block)
    -959   sql = update_sql(values)
    -960   if uses_returning?(:update)
    -961     returning_fetch_rows(sql, &block)
    -962   else
    -963     execute_dui(sql)
    -964   end
    -965 end
    +966 def update(values=OPTS, &block) +967 sql = update_sql(values) +968 if uses_returning?(:update) +969 returning_fetch_rows(sql, &block) +970 else +971 execute_dui(sql) +972 end +973 end
    @@ -4381,13 +4389,13 @@

    Public Instance methods

    [show source]
        # File lib/sequel/dataset/actions.rb
    -973 def where_all(cond, &block)
    -974   if loader = _where_loader([cond], nil)
    -975     loader.all(filter_expr(cond), &block)
    -976   else
    -977     where(cond).all(&block)
    -978   end
    -979 end
    +981 def where_all(cond, &block) +982 if loader = _where_loader([cond], nil) +983 loader.all(filter_expr(cond), &block) +984 else +985 where(cond).all(&block) +986 end +987 end
    @@ -4409,14 +4417,14 @@

    Public Instance methods

    [show source] -
        # File lib/sequel/dataset/actions.rb
    -987 def where_each(cond, &block)
    -988   if loader = _where_loader([cond], nil)
    -989     loader.each(filter_expr(cond), &block)
    -990   else
    -991     where(cond).each(&block)
    -992   end
    -993 end
    +
         # File lib/sequel/dataset/actions.rb
    + 995 def where_each(cond, &block)
    + 996   if loader = _where_loader([cond], nil)
    + 997     loader.each(filter_expr(cond), &block)
    + 998   else
    + 999     where(cond).each(&block)
    +1000   end
    +1001 end
    @@ -4439,16 +4447,16 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1002 def where_single_value(cond)
    -1003   if loader = cached_where_placeholder_literalizer([cond], nil, :_where_single_value_loader) do |pl|
    -1004       single_value_ds.where(pl.arg)
    -1005     end
    -1006 
    -1007     loader.get(filter_expr(cond))
    -1008   else
    -1009     where(cond).single_value
    -1010   end
    -1011 end
    +1010 def where_single_value(cond) +1011 if loader = cached_where_placeholder_literalizer([cond], nil, :_where_single_value_loader) do |pl| +1012 single_value_ds.where(pl.arg) +1013 end +1014 +1015 loader.get(filter_expr(cond)) +1016 else +1017 where(cond).single_value +1018 end +1019 end
    @@ -4467,9 +4475,9 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1015 def with_sql_all(sql, &block)
    -1016   _all(block){|a| with_sql_each(sql){|r| a << r}}
    -1017 end
    +1023 def with_sql_all(sql, &block) +1024 _all(block){|a| with_sql_each(sql){|r| a << r}} +1025 end
    @@ -4488,9 +4496,9 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1022 def with_sql_delete(sql)
    -1023   execute_dui(sql)
    -1024 end
    +1030 def with_sql_delete(sql) +1031 execute_dui(sql) +1032 end
    @@ -4509,14 +4517,14 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1028 def with_sql_each(sql)
    -1029   if rp = row_proc
    -1030     _with_sql_dataset.fetch_rows(sql){|r| yield rp.call(r)}
    -1031   else
    -1032     _with_sql_dataset.fetch_rows(sql){|r| yield r}
    -1033   end
    -1034   self
    -1035 end
    +1036 def with_sql_each(sql) +1037 if rp = row_proc +1038 _with_sql_dataset.fetch_rows(sql){|r| yield rp.call(r)} +1039 else +1040 _with_sql_dataset.fetch_rows(sql){|r| yield r} +1041 end +1042 self +1043 end
    @@ -4535,10 +4543,10 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1039 def with_sql_first(sql)
    -1040   with_sql_each(sql){|r| return r}
    -1041   nil
    -1042 end
    +1047 def with_sql_first(sql) +1048 with_sql_each(sql){|r| return r} +1049 nil +1050 end
    @@ -4557,9 +4565,9 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1055 def with_sql_insert(sql)
    -1056   execute_insert(sql)
    -1057 end
    +1063 def with_sql_insert(sql) +1064 execute_insert(sql) +1065 end
    @@ -4578,11 +4586,11 @@

    Public Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1047 def with_sql_single_value(sql)
    -1048   if r = with_sql_first(sql)
    -1049     r.each{|_, v| return v}
    -1050   end
    -1051 end
    +1055 def with_sql_single_value(sql) +1056 if r = with_sql_first(sql) +1057 r.each{|_, v| return v} +1058 end +1059 end

    Protected Instance methods

    @@ -4602,16 +4610,16 @@

    Protected Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1065 def _import(columns, values, opts)
    -1066   trans_opts = Hash[opts]
    -1067   trans_opts[:server] = @opts[:server]
    -1068   if opts[:return] == :primary_key
    -1069     _import_transaction(values, trans_opts){values.map{|v| insert(columns, v)}}
    -1070   else
    -1071     stmts = multi_insert_sql(columns, values)
    -1072     _import_transaction(stmts, trans_opts){stmts.each{|st| execute_dui(st)}}
    -1073   end
    -1074 end
    +1073 def _import(columns, values, opts) +1074 trans_opts = Hash[opts] +1075 trans_opts[:server] = @opts[:server] +1076 if opts[:return] == :primary_key +1077 _import_transaction(values, trans_opts){values.map{|v| insert(columns, v)}} +1078 else +1079 stmts = multi_insert_sql(columns, values) +1080 _import_transaction(stmts, trans_opts){stmts.each{|st| execute_dui(st)}} +1081 end +1082 end
    @@ -4630,9 +4638,9 @@

    Protected Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1077 def _select_map_multiple(ret_cols)
    -1078   map{|r| r.values_at(*ret_cols)}
    -1079 end
    +1085 def _select_map_multiple(ret_cols) +1086 map{|r| r.values_at(*ret_cols)} +1087 end
    @@ -4651,10 +4659,10 @@

    Protected Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1082 def _select_map_single
    -1083   k = nil
    -1084   map{|r| r[k||=r.keys.first]}
    -1085 end
    +1090 def _select_map_single +1091 k = nil +1092 map{|r| r[k||=r.keys.first]} +1093 end
    @@ -4673,9 +4681,9 @@

    Protected Instance methods

    [show source]
         # File lib/sequel/dataset/actions.rb
    -1088 def single_value_ds
    -1089   clone(:limit=>1).ungraphed.naked
    -1090 end
    +1096 def single_value_ds +1097 clone(:limit=>1).ungraphed.naked +1098 end
    diff --git a/rdoc/created.rid b/rdoc/created.rid index 67cc76e29..bcb78f4ad 100644 --- a/rdoc/created.rid +++ b/rdoc/created.rid @@ -1,11 +1,11 @@ -Sun, 01 Sep 2024 09:22:34 -0700 +Tue, 01 Oct 2024 08:59:27 -0700 README.rdoc Sun, 31 Mar 2024 10:39:03 -0700 -CHANGELOG Thu, 29 Aug 2024 16:43:54 -0700 +CHANGELOG Tue, 01 Oct 2024 08:44:47 -0700 doc/CHANGELOG.old Tue, 04 Aug 2020 18:11:34 -0700 MIT-LICENSE Tue, 03 Jan 2023 11:20:51 -0800 lib/sequel.rb Tue, 01 Aug 2017 08:12:00 -0700 lib/sequel/ast_transformer.rb Fri, 02 Sep 2022 09:11:30 -0700 -lib/sequel/connection_pool.rb Fri, 17 May 2024 11:01:33 -0700 +lib/sequel/connection_pool.rb Thu, 05 Sep 2024 15:28:33 -0700 lib/sequel/core.rb Fri, 17 Dec 2021 16:59:47 -0800 lib/sequel/database.rb Tue, 01 Aug 2017 08:12:00 -0700 lib/sequel/dataset.rb Fri, 31 Mar 2023 14:57:15 -0700 @@ -14,7 +14,7 @@ lib/sequel/exceptions.rb Fri, 02 Feb 2024 13:06:09 -0800 lib/sequel/model.rb Tue, 04 Aug 2020 18:11:34 -0700 lib/sequel/sql.rb Thu, 22 Aug 2024 11:50:35 -0700 lib/sequel/timezones.rb Fri, 17 Dec 2021 16:59:47 -0800 -lib/sequel/version.rb Thu, 29 Aug 2024 16:43:54 -0700 +lib/sequel/version.rb Tue, 01 Oct 2024 08:44:47 -0700 lib/sequel/connection_pool/sharded_single.rb Fri, 17 Dec 2021 16:59:47 -0800 lib/sequel/connection_pool/sharded_threaded.rb Fri, 28 Jun 2024 09:03:32 -0700 lib/sequel/connection_pool/sharded_timed_queue.rb Mon, 12 Jun 2023 13:05:49 -0700 @@ -31,7 +31,7 @@ lib/sequel/database/query.rb Wed, 21 Dec 2022 15:06:01 -0800 lib/sequel/database/schema_generator.rb Tue, 28 Mar 2023 07:40:44 -0700 lib/sequel/database/schema_methods.rb Thu, 22 Aug 2024 11:50:35 -0700 lib/sequel/database/transactions.rb Thu, 21 Sep 2023 15:53:42 -0700 -lib/sequel/dataset/actions.rb Thu, 21 Sep 2023 15:53:42 -0700 +lib/sequel/dataset/actions.rb Fri, 06 Sep 2024 09:53:34 -0700 lib/sequel/dataset/dataset_module.rb Wed, 13 Mar 2024 15:31:48 -0700 lib/sequel/dataset/deprecated_singleton_class_methods.rb Thu, 23 Mar 2023 10:05:41 -0700 lib/sequel/dataset/features.rb Fri, 29 Dec 2023 08:57:16 -0800 @@ -69,7 +69,7 @@ doc/object_model.rdoc Fri, 21 Oct 2022 08:19:04 -0700 doc/opening_databases.rdoc Wed, 05 Jun 2024 15:25:02 -0700 doc/postgresql.rdoc Fri, 21 Oct 2022 08:19:04 -0700 doc/prepared_statements.rdoc Tue, 01 Aug 2017 08:12:00 -0700 -doc/querying.rdoc Wed, 13 Mar 2024 15:34:19 -0700 +doc/querying.rdoc Fri, 06 Sep 2024 09:53:34 -0700 doc/reflection.rdoc Tue, 01 Aug 2017 08:12:00 -0700 doc/schema_modification.rdoc Thu, 01 Feb 2024 15:00:17 -0800 doc/security.rdoc Fri, 21 Oct 2022 08:19:04 -0700 @@ -281,5 +281,6 @@ doc/release_notes/5.81.0.txt Fri, 31 May 2024 11:59:44 -0700 doc/release_notes/5.82.0.txt Mon, 01 Jul 2024 08:14:55 -0700 doc/release_notes/5.83.0.txt Thu, 08 Aug 2024 09:05:13 -0700 doc/release_notes/5.84.0.txt Thu, 29 Aug 2024 16:43:54 -0700 +doc/release_notes/5.85.0.txt Tue, 01 Oct 2024 08:44:47 -0700 doc/release_notes/5.9.0.txt Fri, 01 Jun 2018 07:49:41 -0700 lib/sequel/extensions/migration.rb Fri, 02 Feb 2024 13:06:09 -0800 diff --git a/rdoc/files/CHANGELOG.html b/rdoc/files/CHANGELOG.html index 917e5b006..7f72ab779 100644 --- a/rdoc/files/CHANGELOG.html +++ b/rdoc/files/CHANGELOG.html @@ -31,12 +31,23 @@

    CHANGELOG
    Last Update: -2024-08-29 16:43:54 -0700 +2024-10-01 08:44:47 -0700
    +

    5.85.0 (2025-10-01)

    +
    • +

      Support json_table on PostgreSQL 17+ in the pg_json_ops extension (jeremyevans)

      +
    • +

      Make Dataset#get and first without argument not create intermediate datasets if receiver uses raw SQL (jeremyevans)

      +
    • +

      Add dataset_run extension, for building SQL using datasets, and running with Database#run (jeremyevans)

      +
    • +

      Switch default connection pool to timed_queue on Ruby 3.2+ (jeremyevans)

      +
    +

    5.84.0 (2024-09-01)

    • Support creating VIRTUAL tables on SQLite via the create_table :using option (jeremyevans)

      diff --git a/rdoc/files/doc/querying_rdoc.html b/rdoc/files/doc/querying_rdoc.html index fbc6d903e..0b8b99ace 100644 --- a/rdoc/files/doc/querying_rdoc.html +++ b/rdoc/files/doc/querying_rdoc.html @@ -31,7 +31,7 @@

      querying.rdoc

    Last Update: -2024-03-13 15:34:19 -0700 +2024-09-06 09:53:34 -0700
    @@ -986,6 +986,31 @@

    Custom SQL

    That way Sequel’s method chaining still works, and it increases Sequel’s ability to introspect the code.

    +

    If you must work with datasets using custom SQL, and you don’t want to use the implicit_subquery extension, it is recommended you limit yourself to calling the following methods on the dataset:

    +
    get (without_arguments) or single_value! +

    returns first column value of first row

    +
    first (without arguments) or single_record! +

    returns first row

    +
    each +

    yields each row to block

    +
    all +

    returns all rows

    +
    map +

    returns array of values

    +
    to_hash +

    Returns hash mapping given value to row or other values

    +
    to_hash_groups +

    Returns hash mapping value to array of rows or other values

    +
    insert +

    For INSERT statements, run the statement (which may or may not return any autoincremented primary key value, depending on adapter used).

    +
    update, delete +

    For UPDATE or DELETE statements, run the statement and return the number of rows updated or deleted.

    +
    from_self +

    Wrap the current dataset in a subquery, returning a dataset that can use Sequel’s full dataset API.

    +
    + +

    Calling other methods, such as methods designed to return a dataset with modified SQL, may result in problems or confusion, since the custom SQL will override the SQL Sequel would normally generate.

    +

    Checking for Records

    If you just want to know whether the current dataset would return any rows, use empty?:

    diff --git a/rdoc/files/doc/release_notes/5_85_0_txt.html b/rdoc/files/doc/release_notes/5_85_0_txt.html new file mode 100644 index 000000000..5d6dc66b1 --- /dev/null +++ b/rdoc/files/doc/release_notes/5_85_0_txt.html @@ -0,0 +1,102 @@ + + + +5.85.0.txt + + + + + + +
    +
    +

    5.85.0.txt +

    +
    +doc/release_notes/5.85.0.txt +
    +
    +Last Update: +2024-10-01 08:44:47 -0700 +
    +
    +
    +
    +
    +

    New Features

    +
    • +

      The pg_json_ops extension now supports json_table on PostgreSQL 17+:

      + +
      Sequel.extension :pg_json_ops
      +j = Sequel.pg_json_op(:json_column)
      +
      +j.table('$.foo') do
      +   String :bar
      +   Integer :baz
      +end
      +# json_table("json_column", '$.foo' COLUMNS("bar" text, "baz" integer))
      +
      +j.table('$.foo', passing: {a: 1}) do
      +   ordinality :id
      +   String :bar, format: :json, on_error: :empty_object
      +   nested '$.baz' do
      +     Integer :q, path: '$.quux', on_empty: :error
      +   end
      +   exists :x, Date, on_error: false
      +end
      +# json_table(json_column, '$.foo' PASSING 1 AS a COLUMNS(
      +#   "id" FOR ORDINALITY,
      +#   "bar" text FORMAT JSON EMPTY OBJECT ON ERROR,
      +#   NESTED '$.baz' COLUMNS(
      +#     "q" integer PATH '$.quux' ERROR ON EMPTY
      +#   ),
      +#   "d" date EXISTS FALSE ON ERROR
      +# ))
      +
      +
    • +

      A dataset_run extension has been added. This allows you to easily build SQL using dataset methods, but run the SQL using Database#run:

      + +
      DB.extension(:dataset_run)
      +DB["GRANT SELECT ON ? TO ?", :table, :user].run
      +
      +
    + +

    Other Improvements

    +
    • +

      The default connection pool on Ruby 3.2+ has switched from threaded to timed_queue. The timed_queue connection pool has been shown to have sufficient advantages over the threaded connection pool to justify the minor backwards compatibility issues (which are documented below). If you would like to continue using the the threaded connection pool, you can use the pool_class: :threaded Database option.

      +
    • +

      When calling Dataset#get and first without arguments or blocks, if the receiver already uses raw SQL, no intermediate datasets are created. This improves performance, and fixes an issue with Dataset#get when using the implicit_subquery extension.

      +
    + +

    Backwards Compatibility

    +
    • +

      The default connection pool switch from threaded to timed_queue can break backwards compatibility if you are accessing the pool directly and using the available_connections or allocated accessor methods. If you are using those methods, or a library that uses them, you’ll need to stop using them, or force the use of the threaded connection pool as described above.

      +
    +
    +
    +
    + +
    +
    + + +
    + + + diff --git a/rdoc/files/lib/sequel/connection_pool_rb.html b/rdoc/files/lib/sequel/connection_pool_rb.html index 19eae2ea0..e855c5f8b 100644 --- a/rdoc/files/lib/sequel/connection_pool_rb.html +++ b/rdoc/files/lib/sequel/connection_pool_rb.html @@ -31,7 +31,7 @@

    connection_pool.rb

    Last Update: -2024-05-17 11:01:33 -0700 +2024-09-05 15:28:33 -0700
    diff --git a/rdoc/files/lib/sequel/dataset/actions_rb.html b/rdoc/files/lib/sequel/dataset/actions_rb.html index 1a0f88ac7..3ee0b3c48 100644 --- a/rdoc/files/lib/sequel/dataset/actions_rb.html +++ b/rdoc/files/lib/sequel/dataset/actions_rb.html @@ -31,7 +31,7 @@

    actions.rb

    Last Update: -2023-09-21 15:53:42 -0700 +2024-09-06 09:53:34 -0700
    diff --git a/rdoc/files/lib/sequel/version_rb.html b/rdoc/files/lib/sequel/version_rb.html index 228acaea4..67e5c1ab8 100644 --- a/rdoc/files/lib/sequel/version_rb.html +++ b/rdoc/files/lib/sequel/version_rb.html @@ -31,7 +31,7 @@

    version.rb

    Last Update: -2024-08-29 16:43:54 -0700 +2024-10-01 08:44:47 -0700
    diff --git a/rdoc/fr_file_index.html b/rdoc/fr_file_index.html index b6e7b666b..e2bc74a8f 100644 --- a/rdoc/fr_file_index.html +++ b/rdoc/fr_file_index.html @@ -237,6 +237,7 @@
  • 5.82.0.txt
  • 5.83.0.txt
  • 5.84.0.txt
  • +
  • 5.85.0.txt
  • 5.9.0.txt
  • schema_modification.rdoc
  • security.rdoc