Class: StaticTracing::Tracepoints

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby-static-tracing/tracepoints.rb

Defined Under Namespace

Classes: ProviderMissingError, TracepointMissingError

Class Method Summary collapse

Class Method Details

.add(provider, name, data_types) ⇒ Object



9
10
11
12
13
# File 'lib/ruby-static-tracing/tracepoints.rb', line 9

def add(provider, name, data_types)
  tracepoints[provider][name.to_s] ||= begin
    StaticTracing::Tracepoint.new(provider, name.to_s, *data_types)
  end
end

.cleanObject



21
22
23
# File 'lib/ruby-static-tracing/tracepoints.rb', line 21

def clean
  @tracepoints ||= Hash.new { |hash, key| hash[key] = {} }
end

.get(provider, name) ⇒ Object



15
16
17
18
19
# File 'lib/ruby-static-tracing/tracepoints.rb', line 15

def get(provider, name)
  tracepoints
    .fetch(provider) { raise_error(ProviderMissingError) }
    .fetch(name) { raise_error(TracepointMissingError) }
end