Package soot.util

Class ArrayNumberer<E extends Numberable>

    • Field Detail

      • numberToObj

        protected E extends Numberable[] numberToObj
      • lastNumber

        protected int lastNumber
      • freeNumbers

        protected BitSet freeNumbers
    • Constructor Detail

      • ArrayNumberer

        public ArrayNumberer()
      • ArrayNumberer

        public ArrayNumberer​(E[] elements)
    • Method Detail

      • add

        public void add​(E o)
        Description copied from interface: Numberer
        Tells the numberer that a new object needs to be assigned a number.
        Specified by:
        add in interface Numberer<E extends Numberable>
      • get

        public long get​(E o)
        Description copied from interface: Numberer
        Should return the number that was assigned to object o that was previously passed as an argument to add().
        Specified by:
        get in interface Numberer<E extends Numberable>
      • get

        public E get​(long number)
        Description copied from interface: Numberer
        Should return the object that was assigned the number number.
        Specified by:
        get in interface Numberer<E extends Numberable>
      • size

        public int size()
        Description copied from interface: Numberer
        Should return the number of objects that have been assigned numbers.
        Specified by:
        size in interface Numberer<E extends Numberable>
      • remove

        public boolean remove​(E o)
        Description copied from interface: Numberer
        Removes the number for a given object.
        Specified by:
        remove in interface Numberer<E extends Numberable>
        Parameters:
        o - the element
        Returns:
        true if the removal was successful, false when not