usenetbinary-newsreaderwebuiquickboxtraktkodistabletvshowsqnaptautullifanartsickbeardtvseriesplexswizzinembyseedboxtvdbnzbgetsubtitle
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
720 B
26 lines
720 B
"""
|
|
Character field class: a 8-bit character
|
|
"""
|
|
|
|
from hachoir_py3.field import Bits
|
|
from hachoir_py3.core.tools import makePrintable
|
|
|
|
|
|
class Character(Bits):
|
|
"""
|
|
A 8-bit character using ASCII charset for display attribute.
|
|
"""
|
|
static_size = 8
|
|
|
|
def __init__(self, parent, name, description=None):
|
|
Bits.__init__(self, parent, name, self.static_size, description=description)
|
|
|
|
def createValue(self):
|
|
return chr(self._parent.stream.readBits(
|
|
self.absolute_address, self.static_size, self.parent.endian))
|
|
|
|
def createRawDisplay(self):
|
|
return str(Bits.createValue(self))
|
|
|
|
def createDisplay(self):
|
|
return makePrintable(self.value, "ASCII", quote="'")
|
|
|