ReverseFileReader.java


current inspection = 2009-09-03 21:56:13 (id #1)


Filter Options
Annotation Kind:
pre
presumption
post
unanalyzed
test_vector


  • void close()

  • Kind Annotation Text
    prethis.file != null
    postthis.file == null

  • void com.dmdirc.addons.logging.ReverseFileReader(File)

  • Kind Annotation Text
    postnew RandomAccessFile(ReverseFileReader#1) num objects == 1
    postthis.file == &new RandomAccessFile(ReverseFileR eader#1)
    postthis.seekLength == 50
    unanalyzedcall on java.io.RandomAccessFile:length
    unanalyzedcall on java.io.RandomAccessFile:seek

  • void com.dmdirc.addons.logging.ReverseFileReader(String)

  • Kind Annotation Text
    postnew RandomAccessFile(ReverseFileReader#1) num objects == 1
    postthis.file == &new RandomAccessFile(ReverseFileR eader#1)
    postthis.seekLength == 50
    unanalyzedcall on java.io.RandomAccessFile:length
    unanalyzedcall on java.io.RandomAccessFile:seek

  • com.dmdirc.addons.logging.ReverseFileReader__static_init

  • Kind Annotation Text

  • Stack getLines(int)

  • Kind Annotation Text
    pre(soft) init'ed(this.seekLength)
    pre(soft) this.file != null
    postnew Stack(getLines#1) num objects == 1
    postreturn_value == &new Stack(getLines#1)
    unanalyzedcall on java.io.RandomAccessFile:getFilePointer
    unanalyzedcall on java.io.RandomAccessFile:read
    unanalyzedcall on java.io.RandomAccessFile:seek
    unanalyzedcall on java.lang.Byte:byteValue
    unanalyzedcall on java.lang.Byte:valueOf
    unanalyzedcall on java.lang.String
    unanalyzedcall on java.nio.charset.Charset:forName
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.ArrayList:add
    unanalyzedcall on java.util.ArrayList:get
    unanalyzedcall on java.util.ArrayList:size

  • String getLinesAsString(int)

  • Kind Annotation Text
    pre(soft) init'ed(this.seekLength)
    pre(soft) this.file != null
    postjava.lang.StringBuilder:toString(...)._tainted == 0
    postreturn_value == &java.lang.StringBuilder:toStri ng(...)
    unanalyzedcall on java.io.RandomAccessFile:getFilePointer
    unanalyzedcall on java.io.RandomAccessFile:read
    unanalyzedcall on java.io.RandomAccessFile:seek
    unanalyzedcall on java.lang.Byte:byteValue
    unanalyzedcall on java.lang.Byte:valueOf
    unanalyzedcall on java.lang.String
    unanalyzedcall on java.nio.charset.Charset:forName
    unanalyzedcall on java.util.ArrayList
    unanalyzedcall on java.util.ArrayList:add
    unanalyzedcall on java.util.ArrayList:get
    unanalyzedcall on java.util.ArrayList:size
    test_vectorjava.lang.StringBuilder:charAt(...)@245: {0..9, 11..216-1}, {10}

  • String getNextLine()

  • Kind Annotation Text
    preinit'ed(this.seekLength)
    prethis.file != null
    presumptionjava.io.RandomAccessFile:getFilePointer(...)@134 != 0
    presumptionjava.io.RandomAccessFile:getFilePointer(...)@145 - this.seekLength in {-2_147_483_903.. 264-1}
    presumptionjava.io.RandomAccessFile:getFilePointer(...)@145 >= -231
    presumptionjava.util.ArrayList:get(...)@205 != null
    presumptionjava.util.ArrayList:size(...)@204 >= 1
    presumptionjava.util.ArrayList:size(...)@205 - java.util.ArrayList:size(...)@204 in {-6_442_450_943..0}
    postnew String(getNextLine#4) num objects == 1
    postreturn_value == &new String(getNextLine#4)
    test_vectorbytes[i]@162: {13}, {10}, {-128..9, 11,12, 14..255}
    test_vectorjava.io.RandomAccessFile:getFilePointer(...)@145 - this.seekLength: {1..264-1}, {-2_147_483_903..-1}

  • byte getSeekLength()

  • Kind Annotation Text
    preinit'ed(this.seekLength)
    postinit'ed(return_value)
    postreturn_value == this.seekLength

  • void reset()

  • Kind Annotation Text
    prethis.file != null

  • void setSeekLength(byte)

  • Kind Annotation Text
    postinit'ed(this.seekLength)
    postthis.seekLength == newValue