parameters: (self, length, start)
return_statement: return -tmp
docstring: Read bits and interpret as a signed int
docstring_summary: Read bits and interpret as a signed int
docstring_tokens: Read bits and interpret as a signed int
function: def _readint(self, length, start):
          """Read bits and interpret as a signed int"""
          ui = self._readuint(length, start)
          if not ui >> (length - 1):
              # Top bit not set, number is positive
              return ui
          # Top bit is set, so number is negative
          tmp = (~(ui - 1)) & ((1 << length) - 1)
          return -tmp
function_tokens: def _readint ( self , length , start ) : ui = self . _readuint ( length , start ) if not ui >> ( length - 1 ) : # Top bit not set, number is positive return ui # Top bit is set, so number is negative tmp = ( ~ ( ui - 1 ) ) & ( ( 1 << length ) - 1 ) return - tmp