class TypeProf::SymbolBlock
Attributes
              iseq[R]
            
            
              outer_ep[R]
            
            Public Class Methods
                              new(sym)
                              click to toggle source
                            
                            # File typeprof-0.21.9/lib/typeprof/block.rb, line 106 def initialize(sym) @sym = sym end
Public Instance Methods
                              consistent?(other)
                              click to toggle source
                            
                            # File typeprof-0.21.9/lib/typeprof/block.rb, line 116 def consistent?(other) true # XXX end
                              do_call(aargs, caller_ep, caller_env, scratch, replace_recv_ty:, replace_cref:, &ctn)
                              click to toggle source
                            
                            # File typeprof-0.21.9/lib/typeprof/block.rb, line 124 def do_call(aargs, caller_ep, caller_env, scratch, replace_recv_ty:, replace_cref:, &ctn) if aargs.lead_tys.size >= 1 recv = aargs.lead_tys[0] recv = Type.any if recv == Type.bot aargs = ActualArguments.new(aargs.lead_tys[1..], aargs.rest_ty, aargs.kw_tys, aargs.blk_ty) elsif aargs.rest_ty recv = aargs.rest_ty.elems.squash_or_any # XXX: need to shift else recv = Type.any end scratch.add_block_signature!(self, aargs.to_block_signature) recv.each_child do |recv| scratch.do_send(recv, @sym, aargs, caller_ep, caller_env, &ctn) end end
                              inspect()
                              click to toggle source
                            
                            # File typeprof-0.21.9/lib/typeprof/block.rb, line 112 def inspect "#<SymbolBlock: #{ @sym }>" end
                              substitute(_subst, _depth)
                              click to toggle source
                            
                            # File typeprof-0.21.9/lib/typeprof/block.rb, line 120 def substitute(_subst, _depth) self end