Do not insert Array type to local environment, stack, etc.
# File typeprof-0.12.0/lib/typeprof/container-type.rb, line 260 def generate_substitution { Type::Var.new(:Elem) => @elems.squash } end
# File typeprof-0.12.0/lib/typeprof/container-type.rb, line 223 def inspect "Type::Array[#{ @elems.inspect }, base_type: #{ @base_type.inspect }]" #@base_type.inspect end
# File typeprof-0.12.0/lib/typeprof/container-type.rb, line 245 def limit_size(limit) return Type.any if limit <= 0 Array.new(@elems.limit_size(limit - 1), @base_type) end
# File typeprof-0.12.0/lib/typeprof/container-type.rb, line 236 def localize(env, alloc_site, depth) return env, Type.any if depth <= 0 alloc_site = alloc_site.add_id(:ary).add_id(@base_type) env, elems = @elems.localize(env, alloc_site, depth - 1) ty = Local.new(Array, alloc_site, @base_type) env = env.deploy_type(alloc_site, elems) return env, ty end
# File typeprof-0.12.0/lib/typeprof/container-type.rb, line 250 def method_dispatch_info raise end