#NEWLINE# def formatValueType( item ) : #NEWLINE# #INDENT# m = ( ( item . header . valuetype & 240 ) << 8 ) #NEWLINE# if ( m == SDB_TAG_TYPES . TAG_TYPE_LIST ) : #NEWLINE# #INDENT# raise RuntimeError ( 'cannot format complex TAG_TYPE_LIST' ) #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( m == SDB_TAG_TYPES . TAG_TYPE_STRINGREF ) : #NEWLINE# #INDENT# return 'stringref' #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( m == SDB_TAG_TYPES . TAG_TYPE_DWORD ) : #NEWLINE# #INDENT# return 'integer' #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( m == SDB_TAG_TYPES . TAG_TYPE_STRING ) : #NEWLINE# #INDENT# return 'string' #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( m == SDB_TAG_TYPES . TAG_TYPE_NULL ) : #NEWLINE# #INDENT# return 'null' #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( m == SDB_TAG_TYPES . TAG_TYPE_QWORD ) : #NEWLINE# #INDENT# return 'integer' #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( m == SDB_TAG_TYPES . TAG_TYPE_WORD ) : #NEWLINE# #INDENT# return 'integer' #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( m == SDB_TAG_TYPES . TAG_TYPE_BINARY ) : #NEWLINE# #INDENT# tag = ( ( item . header . valuetype << 8 ) | item . header . tagtype ) #NEWLINE# if ( tag == SDB_TAGS . TAG_DATABASE_ID ) : #NEWLINE# #INDENT# return 'guid' #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# return 'hex' #NEWLINE# #UNINDENT# #UNINDENT# else : #NEWLINE# #INDENT# raise RuntimeError ( 'cannot format unknown value type: 0x%x' , item . header . valuetype )