Sha256: 0c7215b42c9e23b99ae9a351b5c1445794386c7684ffca230f515fefefd0194d
Contents?: true
Size: 1.03 KB
Versions: 1
Compression:
Stored size: 1.03 KB
Contents
module Veritas class Optimizer module Algebra # Abstract base class representing Summarization optimizations class Summarization < Relation::Operation::Unary # Optimize when operand is optimizable class UnoptimizedOperand < self # Test if the operand is unoptimized # # @return [Boolean] # # @api private def optimizable? !operand.equal?(operation.operand) end # Return a Summarization with an optimized operand # # @return [Rename] # # @api private def optimize operation = self.operation operation.class.new(operand, operation.summarize_by, operation.summarizers) end end # class UnoptimizedOperand Veritas::Algebra::Summarization.optimizer = chain( MaterializedOperand, UnoptimizedOperand ) end # class Summarization end # module Algebra end # class Optimizer end # module Veritas
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
veritas-0.0.1 | lib/veritas/optimizer/algebra/summarization.rb |