lib/tapioca.rb in tapioca-0.9.3 vs lib/tapioca.rb in tapioca-0.9.4

- old
+ new

@@ -4,9 +4,21 @@ require "sorbet-runtime" module Tapioca extend T::Sig + @traces = T.let([], T::Array[TracePoint]) + + sig { params(trace_name: Symbol, block: T.proc.params(arg0: TracePoint).void).void } + def self.register_trace(trace_name, &block) + @traces << TracePoint.trace(trace_name, &block) + end + + sig { void } + def self.disable_traces + @traces.each(&:disable) + end + sig do type_parameters(:Result) .params(blk: T.proc.returns(T.type_parameter(:Result))) .returns(T.type_parameter(:Result)) end