Sha256: 8769574ddb1a8463735b00c76f2931e0e4d095f9ce23b109793917ac84b821e0
Contents?: true
Size: 1.25 KB
Versions: 1
Compression:
Stored size: 1.25 KB
Contents
# typed: strict module ThreadWeaver module ThreadInstruction extend T::Sig extend T::Helpers interface! sealed! sig { abstract.params(m: Module).returns(T::Boolean) } def is_a?(m) end end class PauseAtThreadStart < T::Struct include ThreadInstruction end class ContinueToThreadEnd < T::Struct include ThreadInstruction end class PauseWhenLineCount < T::Struct include ThreadInstruction extend T::Sig const :count, Integer const :target_classes, T::Array[Module] sig { returns(PauseWhenLineCount) } def next PauseWhenLineCount.new( count: count + 1, target_classes: target_classes ) end end class PauseAtMethodCall < T::Struct include ThreadInstruction const :klass, Class const :method_name, Symbol end class PauseAtMethodReturn < T::Struct include ThreadInstruction const :klass, Class const :method_name, Symbol end class PauseAtSourceLine < T::Struct include ThreadInstruction extend T::Sig const :path_suffix, String const :line, Integer sig { returns(PauseAtSourceLine) } def next PauseAtSourceLine.new( line: line + 1, path_suffix: path_suffix ) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
thread_weaver-0.1.0 | lib/thread_weaver/thread_instruction.rb |