Sha256: 890b8d6c7a7fe1d1df529f561a16d7b1aac33acfa8dc6ebc6d920805a873df7d
Contents?: true
Size: 973 Bytes
Versions: 1
Compression:
Stored size: 973 Bytes
Contents
module Furnace class SSA::Value def initialize @uses = Set.new SSA.instrument(self) end def initialize_copy(original) @uses = Set.new SSA.instrument(self) end def type Type::Bottom.new end def constant? false end def add_use(use) @uses.add use end def remove_use(use) @uses.delete use end def each_use(&block) @uses.each(&block) end def use_count @uses.count end def used? @uses.any? end def replace_all_uses_with(value) each_use do |user| user.replace_uses_of self, value end end def to_value self end def ==(other) other.respond_to?(:to_value) && equal?(other.to_value) end def awesome_print(p=AwesomePrinter.new) awesome_print_as_value(p) end def awesome_print_as_value(p=AwesomePrinter.new) p.text inspect end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
furnace-0.4.0.beta.2 | lib/furnace/ssa/value.rb |