Module: DEBUGGER__::SkipPathHelper

Included in:
Breakpoint, ThreadClient, ThreadClient::Recorder, Tracer
Defined in:
lib/debug/thread_client.rb

Instance Method Summary collapse

Instance Method Details

#skip_config_skip_path?(path) ⇒ Boolean

Returns:

  • (Boolean)


27
28
29
# File 'lib/debug/thread_client.rb', line 27

def skip_config_skip_path?(path)
  (skip_paths = CONFIG[:skip_path]) && skip_paths.any?{|skip_path| path.match?(skip_path)}
end

#skip_internal_path?(path) ⇒ Boolean

Returns:

  • (Boolean)


31
32
33
# File 'lib/debug/thread_client.rb', line 31

def skip_internal_path?(path)
  path.start_with?(__dir__) || path.delete_prefix('!eval:').start_with?('<internal:')
end

#skip_location?(loc) ⇒ Boolean

Returns:

  • (Boolean)


35
36
37
38
# File 'lib/debug/thread_client.rb', line 35

def skip_location?(loc)
  loc_path = loc.absolute_path || "!eval:#{loc.path}"
  skip_path?(loc_path)
end

#skip_path?(path) ⇒ Boolean

Returns:

  • (Boolean)


19
20
21
22
23
24
25
# File 'lib/debug/thread_client.rb', line 19

def skip_path?(path)
  !path ||
  DEBUGGER__.skip? ||
  ThreadClient.current.management? ||
  skip_internal_path?(path) ||
  skip_config_skip_path?(path)
end