soot.util |
Soot utility classes
Generally useful utility classes for Soot.
|
Java Source File Name | Type | Comment |
ArrayNumberer.java | Class | A class that numbers objects, so they can be placed in bitsets. |
ArraySet.java | Class | |
BitSetIterator.java | Class | A fast enumerator for sparse bit sets. |
BitVector.java | Class | This is the Soot internal implementation of java.util.BitSet with
Felix and Jerome's clever efficient iterator. |
Chain.java | Interface | Augmented data type guaranteeing O(1) insertion and removal from a set
of ordered, unique elements. |
Cons.java | Class | A Lisp-style cons cell. |
Debug.java | Class | Provides utility methods for debugging, including assertions. |
DeterministicHashMap.java | Class | Implementation of HashMap which guarantees a stable
(between executions) order for its elements upon iteration.
This is quite useful for maps of Locals, to avoid nondeterministic
local-name drift. |
EscapedReader.java | Class | A FilterReader which catches escaped characters (\\unnnn ) in the
input and de-escapes them. |
EscapedWriter.java | Class | A FilterWriter which catches to-be-escaped characters (\\unnnn ) in the
input and substitutes their escaped representation. |
HashChain.java | Class | Reference implementation of the Chain interface,
using a HashMap as the underlying structure. |
HashMultiMap.java | Class | A map with sets as values, HashMap implementation. |
Heap.java | Class | A heap (priority queue) implementation. |
IdentityHashSet.java | Class | Implements a hashset with comparison over identity. |
IntegerNumberer.java | Class | A numberer that associates each number with the corresponding Long object. |
IterableMap.java | Class | |
IterableNumberer.java | Interface | A numberer which also supports an iterator on newly-added objects. |
IterableSet.java | Class | |
JasminOutputStream.java | Class | An output stream that wraps an existing output stream, and converts Jasmin
code written into a class file that gets written to the original output
stream. |
LargeNumberedMap.java | Class | A java.util.Map-like map with Numberable objects as the keys. |
MapNumberer.java | Class | |
MultiMap.java | Interface | A map with sets as values. |
Numberable.java | Interface | A class that numbers objects, so they can be placed in bitsets. |
NumberedSet.java | Class | Holds a set of Numberable objects. |
NumberedString.java | Class | A class that assigns integers to java.lang.Strings. |
Numberer.java | Interface | A numberer converts objects to unique non-negative integers, and vice-versa. |
PhaseDumper.java | Class | The PhaseDumper is a debugging aid. |
SharedBitSet.java | Class | |
SharedBitSetCache.java | Class | |
SingletonList.java | Class | A list containing exactly one object, immutable. |
SmallNumberedMap.java | Class | A java.util.Map-like map with Numberable objects as the keys. |
StationaryArrayList.java | Class | This class implements an ArrayList where the
equality and hashCode use object equality, not list
equality. |
StringNumberer.java | Class | A class that numbers strings, so they can be placed in bitsets. |
StringTools.java | Class | Utility methods for string manipulations commonly used in Soot. |
StringTools_replaceAll_Test.java | Class | JUnit test suite for the StringTools.replaceAll() method. |
Switch.java | Interface | Basic interface used in the implementation of the Visitor design patterm. |
Switchable.java | Interface | Basic interface used for visited objects in the Visitor design patterm. |
UnitMap.java | Class | Maps each unit to the result of mapTo . |