Lazily load profiler hooks

This commit is contained in:
Justin Li
2014-11-12 00:05:01 -05:00
parent 3321cffe08
commit c0aab820ed
4 changed files with 16 additions and 1 deletions
+4
View File
@@ -70,6 +70,10 @@ module Liquid
end
end
def self.hooks_loaded
false
end
def self.profile_token_render(token)
if Profiler.current_profile && token.respond_to?(:render)
Profiler.current_profile.start_token(token)
+6
View File
@@ -1,4 +1,10 @@
module Liquid
class Profiler
def self.hooks_loaded
true
end
end
class BlockBody
def render_token_with_profiling(token, context)
Profiler.profile_token_render(token) do
+2
View File
@@ -250,6 +250,8 @@ module Liquid
def with_profiling
if @profiling && !@options[:included]
Liquid.load_profiler_hooks unless Profiler.hooks_loaded
@profiler = Profiler.new
@profiler.start