Class: Orthoses::Trace::Method
- Inherits:
-
Object
- Object
- Orthoses::Trace::Method
- Includes:
- Targetable
- Defined in:
- lib/orthoses/trace/method.rb
Defined Under Namespace
Classes: Info
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(loader, patterns:, sort_union_types: true) ⇒ Method
constructor
A new instance of Method.
Methods included from Targetable
Constructor Details
#initialize(loader, patterns:, sort_union_types: true) ⇒ Method
Returns a new instance of Method.
10 11 12 13 14 15 16 17 18 |
# File 'lib/orthoses/trace/method.rb', line 10 def initialize(loader, patterns:, sort_union_types: true) @loader = loader @patterns = patterns @sort_union_types = sort_union_types @stack = [] @args_return_map = Hash.new { |h, k| h[k] = [] } @alias_map = {} end |
Instance Method Details
#call ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/orthoses/trace/method.rb', line 20 def call build_trace_point.enable do @loader.call end.tap do |store| build_members.each do |(mod_name, member)| out = StringIO.new writer = ::RBS::Writer.new(out: out) writer.write_member(member) store[mod_name] << out.string end end end |