[Groonga-commit] groonga/groonga at d8a8735 [master] mruby: reduce object allocation

Back to archive index

Kouhei Sutou null+****@clear*****
Mon Jul 18 18:43:25 JST 2016


Kouhei Sutou	2016-07-18 18:43:25 +0900 (Mon, 18 Jul 2016)

  New Revision: d8a8735a0417b37e5fca401dcf6469b99f74aac0
  https://github.com/groonga/groonga/commit/d8a8735a0417b37e5fca401dcf6469b99f74aac0

  Message:
    mruby: reduce object allocation

  Modified files:
    lib/mrb/scripts/expression.rb
    lib/mrb/scripts/expression_rewriters.rb

  Modified: lib/mrb/scripts/expression.rb (+1 -0)
===================================================================
--- lib/mrb/scripts/expression.rb    2016-07-15 19:40:22 +0900 (04f29ac)
+++ lib/mrb/scripts/expression.rb    2016-07-18 18:43:25 +0900 (cd40160)
@@ -13,6 +13,7 @@ module Groonga
     def rewrite
       rewritten = nil
       begin
+        return nil unless ExpressionRewriters.enabled?
         source = self
         ExpressionRewriters.classes.each do |rewriter_class|
           rewriter = rewriter_class.new(source)

  Modified: lib/mrb/scripts/expression_rewriters.rb (+10 -0)
===================================================================
--- lib/mrb/scripts/expression_rewriters.rb    2016-07-15 19:40:22 +0900 (7851d9d)
+++ lib/mrb/scripts/expression_rewriters.rb    2016-07-18 18:43:25 +0900 (ae77354)
@@ -7,6 +7,16 @@ module Groonga
         @rewriters[name] = rewriter_class
       end
 
+      def enabled?
+        rewriters_table_name =
+          Config["expression_rewriter.table"] || "expression_rewriters"
+        rewriters_table = Context.instance[rewriters_table_name]
+        return false if rewriters_table.nil?
+        return false if rewriters_table.empty?
+
+        true
+      end
+
       def classes
         rewriters_table_name =
           Config["expression_rewriter.table"] || "expression_rewriters"
-------------- next part --------------
HTML����������������������������...
다운로드 



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