Base64.java


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


Filter Options
Annotation Kind:
pre
presumption
post
unanalyzed
test_vector


  • byte[] decode(String)

  • Kind Annotation Text
    pre(soft) init'ed(IA[...])
    presumptionjava.lang.String:charAt(...)@473 <= 255
    presumptionjava.lang.String:charAt(...)@482 <= 255
    presumptionjava.lang.String:charAt(...)@494 <= 255
    postnew byte[](decode#1) num objects <= 1
    postnew byte[](decode#1).length == 0
    postnew byte[](decode#2) num objects <= 1
    postnew byte[](decode#2).length in {0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99, 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, 132, 135, 138, 141, 144, 147, 150...
    postpossibly_updated(new byte[](decode#2)[...])
    postreturn_value in Addr_Set{null,&amp;new byte[](decode#2),&amp;new byte[](decode#1)}
    test_vectorIA[...]: {1..232-1}, {-231. .-1}
    test_vectorjava.lang.String:charAt(...)@483: {0..60, 62..216-1}, {61}

  • byte[] decode(byte[])

  • Kind Annotation Text
    pre(soft) init'ed(IA[...])
    pre(soft) init'ed(sArr[...])
    pre(soft) sArr.length in {1..232-1}
    presArr != null
    postnew byte[](decode#1) num objects <= 1
    postnew byte[](decode#1).length in {0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99, 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, 132, 135, 138, 141, 144, 147, 150...
    postpossibly_updated(new byte[](decode#1)[...])
    postreturn_value in Addr_Set{null,&amp;new byte[](decode#1)}
    test_vectorIA[...]: {1..232-1}, {-231.. -1}
    test_vectorsArr[...]: {-128..60, 62..255}, {61}

  • byte[] decode(char[])

  • Kind Annotation Text
    pre(soft) init'ed(IA[...])
    pre(soft) sArr.length <= 232-1
    pre(soft) sArr[...] <= 255
    postnew byte[](decode#1) num objects <= 1
    postnew byte[](decode#1).length == 0
    postnew byte[](decode#2) num objects <= 1
    postnew byte[](decode#2).length in {0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99, 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, 132, 135, 138, 141, 144, 147, 150...
    postpossibly_updated(new byte[](decode#2)[...])
    postreturn_value in Addr_Set{null,&amp;new byte[](decode#2),&amp;new byte[](decode#1)}
    test_vectorIA[...]: {1..232-1}, {-231. .-1}
    test_vectorsArr[...]: {0..60, 62..255}, {61}

  • byte[] decodeFast(String)

  • Kind Annotation Text
    pre(soft) init'ed(IA[...])
    pres != null
    presumptionjava.lang.String:charAt(...)@549 <= 255
    presumptionjava.lang.String:charAt(...)@567 <= 255
    presumptionjava.lang.String:length(...)@523 not in {1..3}
    postnew byte[](decodeFast#1) num objects <= 1
    postnew byte[](decodeFast#1).length == 0
    postnew byte[](decodeFast#2) num objects <= 1
    postnew byte[](decodeFast#2).length <= 231
    postpossibly_updated(new byte[](decodeFast#2)[...])
    postreturn_value in Addr_Set{&amp;new byte[](decodeFast #2),&amp;new byte[](decodeFast#1)}
    test_vectorIA[...]: {0..232-1}, {-231. .-1}
    test_vectorjava.lang.String:length(...)@523: {77.. 232-1}, {0}

  • byte[] decodeFast(byte[])

  • Kind Annotation Text
    pre(soft) init'ed(IA[...])
    pre(soft) sArr[...] >= 0
    pre(soft) sArr[76] >= 0
    presArr != null
    presArr.length in {0, 4..232-1}
    postnew byte[](decodeFast#1) num objects <= 1
    postnew byte[](decodeFast#1).length == 0
    postnew byte[](decodeFast#2) num objects <= 1
    postnew byte[](decodeFast#2).length <= 231
    postpossibly_updated(new byte[](decodeFast#2)[...])
    postreturn_value in Addr_Set{&amp;new byte[](decodeFast #2),&amp;new byte[](decodeFast#1)}
    test_vectorIA[...]: {0..232-1}, {-231.. -1}
    test_vectorsArr.length: {77..232-1}, {0}

  • byte[] decodeFast(char[])

  • Kind Annotation Text
    pre(soft) init'ed(IA[...])
    pre(soft) sArr[...] <= 255
    pre(soft) sArr[76] <= 255
    presArr != null
    presArr.length in {0, 4..232-1}
    postnew byte[](decodeFast#1) num objects <= 1
    postnew byte[](decodeFast#1).length == 0
    postnew byte[](decodeFast#2) num objects <= 1
    postnew byte[](decodeFast#2).length <= 231
    postpossibly_updated(new byte[](decodeFast#2)[...])
    postreturn_value in Addr_Set{&amp;new byte[](decodeFast #2),&amp;new byte[](decodeFast#1)}
    test_vectorIA[...]: {0..232-1}, {-231. .-1}
    test_vectorsArr.length: {77..232-1}, {0}

  • byte[] encodeToByte(byte[], bool)

  • Kind Annotation Text
    pre(soft) init'ed(sArr[...])
    pre(soft) sArr.length in {0, 3..132_343_121}
    presumption(((sArr[(sLen - 1)] mod 256)*4) mod 232 | (sArr[eLen] mod 256)*1_024) mod 64 < java.lang.String:toCharArray(...)@75.length
    presumption(sArr[s] | (sArr[s] mod 256)*216 | (sArr[s] mod 256)*256) mod 64 < java.lang.String:toCharArray(.. .)@75.length
    presumptioninit'ed(java.lang.String:toCharArray(...)@75[...])
    presumptionjava.lang.String:toCharArray(...)@75.length >= 1
    presumptionshr(((sArr[(sLen - 1)] mod 256)*4) mod 232 | (sArr[eLen] mod 256)*1_024, 12) < java.lang.String:toCharArray(...)@75.length
    presumptionushr(((sArr[(sLen - 1)] mod 256)*4) mod 232 | (sArr[eLen] mod 256)*1_024, 6) mod 64 < java.lang.String:toCharArray(...)@75. length
    presumptionushr(sArr[s] | (sArr[s] mod 256)*216 | (sArr[s] mod 256)*256, 12) mod 64 < java.lang. String:toCharArray(...)@75.length
    presumptionushr(sArr[s] | (sArr[s] mod 256)*216 | (sArr[s] mod 256)*256, 18) mod 64 < java.lang. String:toCharArray(...)@75.length
    presumptionushr(sArr[s] | (sArr[s] mod 256)*216 | (sArr[s] mod 256)*256, 6) mod 64 < java.lang. String:toCharArray(...)@75.length
    postnew byte[](encodeToByte#1) num objects <= 1
    postnew byte[](encodeToByte#1).length == 0
    postnew byte[](encodeToByte#2) num objects <= 1
    postnew byte[](encodeToByte#2).length == (((One-of{sArr.length, 0} - 1)/3)*4 + 4) mod 232 + One-of{((((((One-of{sArr.length, 0} - 1)/3)*4 + 4) mod 232 - 1)/76)*2) mod 232, 0}
    postnew byte[](encodeToByte#2).length in {4..181_101_114}
    postpossibly_updated(new byte[](encodeToByte#2)[...])
    postreturn_value in Addr_Set{&amp;new byte[](encodeToBy te#2),&amp;new byte[](encodeToByte#1)}
    test_vectorlineSep: {0}, {1}

  • char[] encodeToChar(byte[], bool)

  • Kind Annotation Text
    pre(soft) init'ed(sArr[...])
    pre(soft) sArr.length in {0, 3..169_538_366}
    presumption(((sArr[(sLen - 1)] mod 256)*4) mod 232 | (sArr[eLen] mod 256)*1_024) mod 64 < java.lang.String:toCharArray(...)@75.length
    presumption(sArr[s] | (sArr[s] mod 256)*216 | (sArr[s] mod 256)*256) mod 64 < java.lang.String:toCharArray(.. .)@75.length
    presumptioninit'ed(java.lang.String:toCharArray(...)@75[...])
    presumptionjava.lang.String:toCharArray(...)@75.length >= 1
    presumptionshr(((sArr[(sLen - 1)] mod 256)*4) mod 232 | (sArr[eLen] mod 256)*1_024, 12) < java.lang.String:toCharArray(...)@75.length
    presumptionushr(((sArr[(sLen - 1)] mod 256)*4) mod 232 | (sArr[eLen] mod 256)*1_024, 6) mod 64 < java.lang.String:toCharArray(...)@75. length
    presumptionushr(sArr[s] | (sArr[s] mod 256)*216 | (sArr[s] mod 256)*256, 12) mod 64 < java.lang. String:toCharArray(...)@75.length
    presumptionushr(sArr[s] | (sArr[s] mod 256)*216 | (sArr[s] mod 256)*256, 18) mod 64 < java.lang. String:toCharArray(...)@75.length
    presumptionushr(sArr[s] | (sArr[s] mod 256)*216 | (sArr[s] mod 256)*256, 6) mod 64 < java.lang. String:toCharArray(...)@75.length
    postnew char[](encodeToChar#1) num objects <= 1
    postnew char[](encodeToChar#1).length == 0
    postnew char[](encodeToChar#2) num objects <= 1
    postnew char[](encodeToChar#2).length == (((One-of{sArr.length, 0} - 1)/3)*4 + 4) mod 232 + One-of{((((((One-of{sArr.length, 0} - 1)/3)*4 + 4) mod 232 - 1)/76)*2) mod 232, 0}
    postnew char[](encodeToChar#2).length in {4..231_999_870}
    postpossibly_updated(new char[](encodeToChar#2)[...])
    postreturn_value in Addr_Set{&amp;new char[](encodeToCh ar#2),&amp;new char[](encodeToChar#1)}
    test_vectorlineSep: {0}, {1}

  • String encodeToString(byte[], bool)

  • Kind Annotation Text
    pre(soft) init'ed(sArr[...])
    pre(soft) sArr.length in {0, 3..169_538_366}
    postnew String(encodeToString#1) num objects == 1
    postreturn_value == &amp;new String(encodeToString#1)

  • void net.miginfocom.Base64()

  • Kind Annotation Text

  • net.miginfocom.Base64__static_init

  • Kind Annotation Text
    presumptionCA.length@75 <= 232-1
    presumptionCA[i]@75 <= 255
    postCA != null
    postIA == &amp;new int[](Base64__static_init#1)
    postIA.length == 256
    postIA[61] == 0
    postinit'ed(IA[...])
    postnew int[](Base64__static_init#1) num objects == 1