[Groonga-commit] groonga/groonga-command-parser at be90ec7 [master] filter: always include _key

Back to archive index
Kouhei Sutou null+****@clear*****
Wed Mar 6 10:39:28 JST 2019


Kouhei Sutou	2019-03-06 10:39:28 +0900 (Wed, 06 Mar 2019)

  Revision: be90ec746269cbcf1db44bba353e5db3c8c94ba5
  https://github.com/groonga/groonga-command-parser/commit/be90ec746269cbcf1db44bba353e5db3c8c94ba5

  Message:
    filter: always include _key

  Modified files:
    lib/groonga/command/parser/command/groonga-command-filter.rb

  Modified: lib/groonga/command/parser/command/groonga-command-filter.rb (+5 -11)
===================================================================
--- lib/groonga/command/parser/command/groonga-command-filter.rb    2019-03-06 10:30:03 +0900 (e46f86d)
+++ lib/groonga/command/parser/command/groonga-command-filter.rb    2019-03-06 10:39:28 +0900 (7806aa0)
@@ -131,7 +131,7 @@ module Groonga
           def filter_load_columns(command, columns)
             return unless @include_load
             columns = extract_target_columns(command.table, columns)
-            return unless columns
+            return if columns.empty?
             print(JSON.generate(columns))
             @need_comma = true
           end
@@ -142,7 +142,7 @@ module Groonga
             value = extract_target_attributes(command.table,
                                               command.columns,
                                               value)
-            return unless value
+            return if value.empty?
             puts(",") if @need_comma
             print(JSON.generate(value))
             @need_comma = true
@@ -164,26 +164,20 @@ module Groonga
             return true if @include_tables.empty?
             columns = @include_tables[table]
             return false if columns.nil?
-            columns.key?(column)
+            column == "_key" or columns.key?(column)
           end
 
           def extract_target_columns(table, columns)
-            return columns if @include_tables.empty?
-            include_columns = @include_tables[table]
-            return nil if include_columns.nil?
             columns.find_all do |column|
-              include_columns.key?(column)
+              target_column?(table, column)
             end
           end
 
           def extract_target_attributes(table, columns, value)
-            return columns if @include_tables.empty?
-            include_columns = @include_tables[table]
-            return nil if include_columns.nil?
             case value
             when ::Array
               value.find_all.each_with_index do |_, i|
-                include_columns.key?(columns[i])
+                target_column?(table, columns[i])
               end
             when ::Hash
               raise "TODO"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.osdn.me/mailman/archives/groonga-commit/attachments/20190306/bcbd147f/attachment-0001.html>


More information about the Groonga-commit mailing list
Back to archive index