Class: Profiler::Collectors::ConsoleCollector
Instance Attribute Summary
#profile
Instance Method Summary
collapse
descendants, inherited, #name, #panel_content, #render_html, #render_mode, #subscribe
Constructor Details
#initialize(profile, expression:) ⇒ ConsoleCollector
Returns a new instance of ConsoleCollector.
8
9
10
11
12
13
|
# File 'lib/profiler/collectors/console_collector.rb', line 8
def initialize(profile, expression:)
super(profile)
@expression = expression
@return_value = nil
@return_value_captured = false
end
|
Instance Method Details
#collect ⇒ Object
42
43
44
45
46
|
# File 'lib/profiler/collectors/console_collector.rb', line 42
def collect
data = { expression: @expression }
data[:return_value] = @return_value if @return_value_captured
store_data(data)
end
|
#has_data? ⇒ Boolean
48
49
50
|
# File 'lib/profiler/collectors/console_collector.rb', line 48
def has_data?
@expression.to_s.length > 0
end
|
#icon ⇒ Object
23
24
25
|
# File 'lib/profiler/collectors/console_collector.rb', line 23
def icon
">_"
end
|
#priority ⇒ Object
27
28
29
|
# File 'lib/profiler/collectors/console_collector.rb', line 27
def priority
5
end
|
#set_return_value(value) ⇒ Object
15
16
17
18
19
20
21
|
# File 'lib/profiler/collectors/console_collector.rb', line 15
def set_return_value(value)
@return_value = value.inspect.slice(0, 10_000)
@return_value_captured = true
rescue
@return_value = "(uninspectable)"
@return_value_captured = true
end
|
#tab_config ⇒ Object
31
32
33
34
35
36
37
38
39
40
|
# File 'lib/profiler/collectors/console_collector.rb', line 31
def tab_config
{
key: "console",
label: "Console",
icon: icon,
priority: priority,
enabled: true,
default_active: true
}
end
|
52
53
54
|
# File 'lib/profiler/collectors/console_collector.rb', line 52
def toolbar_summary
{ text: @expression.to_s[0, 30], color: "blue" }
end
|