Sha256: a9be6ed65e303f1e8e795bdccdc320256929942acb9e6c8e50ed8ff118d9c10c
Contents?: true
Size: 1.66 KB
Versions: 3
Compression:
Stored size: 1.66 KB
Contents
require "rubyperf" module Perf # # This class can be used in substitution to a Perf::Meter class to avoid overhead when performance measurements is not # required. It needs to maintain the same API as Perf::Meter. # class NoOpMeter def measurements end def current_path end def has_measures? false end def initialize(options=nil) end def clear end def measure(what,&code) yield end def measure_result(what,&code) yield end def method_meters(klass,imethods=[],cmethods=[]) yield end def measure_instance_method(klass,method_name) end def restore_instance_method(klass,method_name) end def restore_all_instance_methods(klass) end def measure_class_method(klass,method_name) end def restore_class_method(klass,method_name) end def restore_all_class_methods(klass) end def restore_all_methods(klass) end def overhead Benchmark::Tms.new end # Returns the total time - expressed with a Benchmark::Tms object - for all the blocks measures def blocks_time Benchmark::Tms.new end # Returns the total time - expressed with a Benchmark::Tms object - for all the methods measures def methods_time Benchmark::Tms.new end def method_missing(method_sym, *arguments, &block) if method_sym.to_s =~ /^report_(.*)$/ klass=Object.const_get("Perf").const_get("ReportFormat#{camelize($1)}") return nil if klass end super end def camelize(from) from.to_s.gsub(/\/(.?)/) { "::#{$1.upcase}" }.gsub(/(?:^|_)(.)/) { $1.upcase } end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rubyperf-1.5.0 | lib/perf/no_op_meter.rb |
rubyperf-1.4.0 | lib/perf/no_op_meter.rb |
rubyperf-1.3.7 | lib/perf/no_op_meter.rb |